#include int main() { int n, m; int i; // 从键盘输入整数n和m scanf("%d %d", &n, &m); // 初始高度为n double height = n; // 总路程 double total_distance = 0; // 第一次落地 total_distance += height; // 反弹至原高度的四分之一 height /= 4; // 从第二次落地开始,循环m-1次 for (i = 1; i < m; ++i) { // 落地 total_distance += height; // 反弹至原高度的四分之一 height /= 4; // 再次下落 total_distance += height; } // 输出总路程,保留两位小数 printf("%.2f\n", total_distance); // 输出第m次落地后反弹的高度,保留两位小数 printf("%.2f\n", height); return 0; }