题目:
解题过程:(其实也就是思考的过程)
本题有一个特别大的陷阱,就是要考虑到一种情况。就是当小明剩余的体力小于他跑步的时间时,他就不会在休息了,就相当于跑步跑到一般没有体力了,支撑不住了,就直接结束了。如果不注意这种情况,这题稳错。
下面是错误的算法:
当将跑步和休息合并时,就会出现上面的情况,如果你要算小明2分钟消耗体力300,当地66分钟的时候消耗体力9900,这时候还剩100的体力,正好10秒消耗100体力,如果你高兴的把这10秒加到66分钟上去,这是的结果为:3970,如果你这样写,这题不就错了。
正确算法:
可以算64分钟时,还剩下的体力为9600,此时只剩下了400体力,小明跑步要消耗600体力,所以小明是不会进行休息的,400体力够小明跑40秒,你把这40秒加到64分钟上去,结果为3880,答案不久对了.
解题代码:
public class 跑步训练 {
public static void main(String[] args) {
int n=10000,t=0;//初始体力与时间
while(n>0)
{
if(n>600)
{
t+=60;//跑步
n-=600;
t+=60;//休息
n+=300;
}else
{
t+=(n/10);
break;
}
}
System.out.println(t);
}
}
题目答案: