题目描述
八尾勇喜欢吃苹果。她现在有(m≤100) 个苹果,吃完一个苹果需要花费 t(0≤t≤100) 分钟,吃完一个后立刻开始吃下一个。现在时间过去了s(s≤10000) 分钟,请问她还有几个完整的苹果?
输入格式
输入三个非负整数表示 m 、t 和 s。
输出格式
输出一个整数表示答案。
如果你出现了 RE,不如检查一下被零除?
输入输出样例
输入
50 10 200
输出
30
这一道题其实有三个坑
1、当t=0时,苹果是一定能吃完的
2、当s/t > m时用m-s/t算出来是负数,实际值应该为0
3、这道题当s/t为小数的时候,应该向上取整,因为题目所问的是有多少个完整的苹果,所以当s%t!=0时 输出的值应该为m-s/t-1
三个坑都了解清楚了,那么就用if语句来解决吧
上代码
#define _CRT_SECURE_NO_WARNINGS 1//取消警告
#include<stdio.h>
int main() {
int m, s, t;
scanf("%d %d %d", &m ,&t ,&s);
if (t == 0) {
printf("0");
}
else {
if (s % t == 0) {
if (m > s / t)
printf("%d", m - s / t);
else
printf("0");
}
else {
if (m > s / t + 1)
printf("%d", m - s / t - 1);
else
printf("0");
}
}
return 0;
}
注!= 意思时不等于(给小白的解释)大佬自动忽略
该题为洛谷的顺序结构题 实际上用了选择结构
if和else下面加大括号有助于理解
本文介绍了一道编程题目,涉及到苹果数量、消耗时间与已过去时间的关系。题目指出,八尾勇有m个苹果,每个苹果消耗t分钟,已过去s分钟。重点在于处理三种特殊情况:t为0时苹果能全部吃完;s超过mt时苹果剩余量为0;s除以t不为整数时需向上取整确定完整苹果数。通过if条件判断,可以得出正确答案。代码实现中使用了C语言,并注意了可能的零除错误。

700

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



