猴子第一天摘下若干个桃子,当即吃了2/3,还不过瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉2/3,又多吃了一个。以后每天早上都吃了前一天剩下的2/3再多一个。到第n天早上想再吃时,发现只剩下k个桃子了。求第一天共摘了多少桃子。
输入格式:
首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组数据输入2个正整数n,k(1≤n,k≤15)。
输出格式:
对于每组测试数据,在一行上输出第一天共摘了多少个桃子。
输入样例:
2
2 1
4 2
输出样例:
6
93
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
total = 1 # 第10天桃子剩1个
for d in range(9, 0, -1): # 逆着推算,每次减1
total = (total + 1) * 2 # 前一天的桃子是当前桃子数加1的两倍
print(f'第{d}天的桃子数为:{total}') # 打印出第1天共摘了多少桃子
参考如下:
t = int(input())
tlist = []
while t > 0:
m = tuple([int(i) for i in input().split(" ")])
tlist.append(m)
t -= 1
for i in tlist:
k = int(i[1])
for d in range(i[0], 1, -1):
k = int((k + 1) * 3)
print(f"第一天摘的桃子数为:%d" % k)
结果如下: