【题目描述】
你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个完整的苹果?
【输入】
输入仅一行,包括n,x和y(均为整数)。
【输出】
输出也仅一行,剩下的苹果个数。
【输入样例】
10 4 9
【输出样例】
7
【程序分析】
需要注意的两点:
- 需要求完整的苹果,所以计算吃掉的苹果时候,需要向上取整
- 要对边界进行判断,当计算吃掉的苹果数量超过n时,要截断到n,确保最后剩余的苹果数非负,这与实际情况相符
【程序实现】
#include <stdio.h>
#include <math.h>
int main() {
int n, x, y;
scanf("%d %d %d", &n, &x, &y);
// 计算被吃掉的苹果数量(向上取整)
int eaten = (y + x - 1) / x; // 等同于 ceil((double)y / x)
// 确保不会吃掉超过n个苹果
if (eaten > n) {
eaten = n;
}
int remaining = n - eaten;
printf("%d\n", remaining);
return 0;
}
5336

被折叠的 条评论
为什么被折叠?



