题目描述
XP一不留神感冒了,于是跑到校医院打点滴。打点滴真是无聊啊,他看到盐水一滴一滴地滴下来,突然想到一个问题:如果盐水有规律地滴下,先滴一滴,停一下;然后滴二滴,停一下;再滴三滴,停一下…,假设这瓶盐水一共有n毫升,每一滴是y毫升,每一滴需要的时间是一秒(假设最后一滴不到y毫升,需花费的时间也算一秒),停一下的时间也是一秒。请问XP多久能挂完这瓶盐水呢?
输入
单组输入数据
n y (0<n,y<=1000)
输出
输出一行结果
样例输入 Copy
10 1
样例输出 Copy
13
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n,y;
while(~scanf("%d%d",&n,&y)){
int count=0;
double n2=(double)n/(double)y;
//printf("%f\n",n2);
int num=ceil(n2);
// printf("%d\n",num);
int p=1;
int q=num;
while(num>=p){
num-=p;
p++;
count++;
}
if(num==0){printf("%d\n",q+count-1);}
else{printf("%d\n",q+count);}
}
return 0;
}