题解:洛谷 P5743 【深基7.习8】猴子吃桃
【题目来源】
洛谷:P5743 【深基7.习8】猴子吃桃 - 洛谷 (luogu.com.cn)
【题目描述】
一只小猴买了若干个桃子。第一天他刚好吃了这些桃子的一半,又贪嘴多吃了一个;接下来的每一天它都会吃剩余的桃子的一半外加一个。第 \(n\) 天早上起来一看,只剩下 \(1\) 个桃子了。请问小猴买了几个桃子?
【输入】
输入一个正整数 \(n\),表示天数。
【输出】
输出小猴买了多少个桃子。
【输入样例】
4
【输出样例】
22
【算法标签】
《洛谷 P5743 猴子吃桃》 #模拟#
【代码详解】
#include <bits/stdc++.h> // 包含标准库头文件(万能头文件)
using namespace std; // 使用标准命名空间
int main()
{
int n; // 定义变量:天数n
int peach = 1; // 定义变量:初始桃子数量(第n天剩余1个)
cin >> n; // 输入天数n
// 逆向推导第1天的桃子数量
for (int i = 1; i < n; i++)
{
peach += 1; // 先补回猴子吃掉的那个桃子
peach *= 2; // 恢复到前一天的桃子数量(翻倍)
}
cout << peach; // 输出第1天的桃子数量
return 0; // 程序正常结束
}
【运行结果】
4
22
浙公网安备 33010602011771号