题目传送门:
https://www.luogu.com.cn/problem/P5709
题目描述
八尾勇喜欢吃苹果。她现在有 m(m\le 100)m(m≤100) 个苹果,吃完一个苹果需要花费 t(t \le100)t(t≤100) 分钟,吃完一个后立刻开始吃下一个。现在时间过去了 s(s\le 10000)s(s≤10000) 分钟,请问她还有几个完整的苹果?
输入格式
输入三个非负整数表示 m 、t 和 s。
输出格式
输出一个整数表示答案。
输入输出样例
输入
50 10 200
输出
30
注意:
m,t,s 都为非负数,那么要注意临界点m=0,t=0,s=0的时候
代码:
#include<iostream>
//用ceil()需要
#include<cmath>
//用min()需要
#include<algorithm>
using namespace std;
int main() {
int m, t, s;
cin >> m >> t >> s;
if (t == 0)
{
cout <<0;//当t=0时,剩下的苹果应为0
}
else {
//ceil()是为对s/t向上取整
//这里对m与(int)ceil((double)s / t)之间取最小值
//应对了m=0,s=0,s/t大于m的三种情况
int temp = min(m, (int)ceil((double)s / t));
cout << m - temp;
}
return 0;
}
欢迎任何形式的转载,但请务必注明出处。
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教 。