怪兽训练计划1

题号:T226636 怪兽训练计划1

题目链接:https://www.luogu.com.cn/problem/T226636

题目描述

小明有一个怪兽训练计划。

初始时,怪兽充满能量,能量值为8800。如果训练怪兽,每分钟损耗能量值400;如果让怪兽休息,每分钟增加能量值200。能量的损耗和增加都是均匀变化的。

小明打算让怪兽训练一分钟、休息一分钟、再训练一分钟、再休息一分钟……如此循环,如果某个时刻怪兽的体力到达0,小明就停止训练怪兽。

请问小明在多久以后停止训练怪兽。请以秒为单位输出答案。答案钟只填写数,不填写单位。

输入格式

输出格式

输出为一个整数。

输入输出样例

 

解题思路:

1. 分两种情况讨论,当剩下的能量大于400的时候,怪兽既能训练也能休息,即每两分钟消耗200点能量。

2.当剩下能量小于400时,怪兽只能训练,需要求出从这个时候开始直至能量耗尽要多少时间。

3.由题目得知能量的损耗和增加都是均匀变化的,可以根据消耗速率求出最后一段需要的时间。

 

 

参考代码:

#include <iostream>

using namespace std;


#include<iostream>
using namespace std;

int main(){
int m = 8800;
double ans = 0;
while(m > 400){  //用while循环比较适合
m-=200;
ans+=120;     //注意时间的单位是秒
}
ans += m/(40/6.0); //用剩余的能量除以消耗速率得出剩余时间  防止输出不是浮点数把6写为6.0
cout<<ans;
return 0;
}

posted @ 2022-04-03 17:11  kenty-time  阅读(108)  评论(0)    收藏  举报