首页 > 试题广场 >

小美种果树

[编程题]小美种果树
  • 热度指数:1310 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
小美在手机上种果树,只要成熟了就可以领到免费的水果了。

小美每天可以给果树浇水,果树的成长值加 x。同时也可以给果树施肥,两次施肥至少需要间隔 2 天,果树的成长值加 y。果树成长值达到 z 就成熟了。

小红想知道,最少需要多少天可以领到免费的水果。

输入描述:
一行三个整数 x,y,z,分别表示浇水的成长值,施肥的成长值,果树成熟的成长值。
1 \leq x, y, z \leq 10^9


输出描述:
一行一个整数,表示最少需要多少天可以领到免费的水果。

示例1

输入

1 2 10

输出

6

说明

第一天施肥浇水,成长值为 3。
第二天浇水,成长值为 3 + 1 = 4。
第三天浇水,成长值为 4 + 1 = 5。
第四天施肥浇水,成长值为 5 + 3 = 8。
第五天浇水,成长值为 8 + 1 = 9。
第六天浇水,成长值为 9 + 1 = 10。
果树成熟了,可以领到免费水果了!

ins=[]
while True:
     try:
         ins.append(list(input().split()))
     except:
        break

x=int(ins[0][0])
y=int(ins[0][1])
z=int(ins[0][2])

sumv,t=0,0
while sumv < z:
     sumv = (t+1)*x + (t//3+1)*y
     t += 1
print (t)
发表于 2024-08-31 13:08:38 回复(0)
def solve(x, y, z):
    d3 = x*3+y
    n3 = z//d3
    z %= d3
    res = 3*n3
    if z == 0:
        return res
    if z <= x+y:
        return res + 1
    if z <= 2*x+y:
        return res + 2
    return res + 3


x, y, z = map(int, input().split())
print(solve(x, y, z))
发表于 2023-08-29 22:05:05 回复(0)