这里我选择的是使用天花板函数对喝了的牛奶(包括正在喝的)进行向上取整,但是我忽略了一个问题,就是下面编程当中,m/h,m和h都是int类型的,在进行整数除法的时候,系统会默认进行向下取整,所以后面会得不到正确的值,就比如我喝完了3瓶,现在在喝第4瓶,剩下没拆封的就是4瓶,如果直接m/h的话就是3,所以在天花板函数内部需要先转成浮点数,避免向下取整,即乘以1.0,此时再计算就是得到4
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int n;
int h;
int m;
while(cin>>n>>h>>m)
{
int w=ceil(1.0*m/h);
int l=n-w;
cout<<l<<endl;
}
return 0;
}

京公网安备 11010502036488号