盐水问题
题目描述 XP一不留神感冒了,于是跑到校医院打点滴。打点滴真是无聊啊, 他看到盐水一滴一滴地滴下来,突然想到一个问题:如果盐水有规律地滴下, 先滴一滴,停一下;
题目描述
XP一不留神感冒了,于是跑到校医院打点滴。打点滴真是无聊啊,
他看到盐水一滴一滴地滴下来,突然想到一个问题:如果盐水有规律地滴下,
先滴一滴,停一下;然后滴二滴,停一下;再滴三滴,停一下…,
假设这瓶盐水一共有n毫升,每一滴是y毫升,每一滴需要的时间是一秒
(假设最后一滴不到y毫升,需花费的时间也算一秒),停一下的时间也是一秒。
请问XP多久能挂完这瓶盐水呢?
输入格式
输入数据包含多个测试实例,每个实例占一行,由VUL和D组成,其中 0
输出
对于每组测试数据,请输出挂完盐水需要的时间,每个实例的输出占一行。
样例输入
10 1
样例输出
13
思路:
先计算滴盐水的时间,再计算盐水之间间隔的时间。
#include
#include
int main()
{int v,d,s,i,h;while(scanf("%d%d",&v,&d)!=EOF){s=v/d;h=ceil(s); //ceil函数表示返回大于或者等于指定表达式的最小整数(滴盐水时间),对应题目条件最后一滴不到y毫升也算一秒。for(i=1;;i++) { s-=i; if(s<=0) break;h++; //盐水之间的间隔时间}printf("%d",h);}
return 0;
}
版权声明
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!