HDU 1555 How many days?

2108 ワード

Problem Description
8600の携帯電話は毎日1元消費して、K元を消費するごとに1元贈ることができて、最初8600はM元があって、最大で何日使うことができますか?
 
 
Input
複数の試験例を含む入力.各試験例は、2個の整数M,k,(2<=k<=M<=1000)を含む.M=0、k=0は入力終了を表す.
 
 
Output
テストインスタンスごとに整数を出力し、M元が使用できる日数を表します.
 
 
Sample Input
2 2
4 3
0 0
 
 
Sample Output
3
5
 
中国語の問題は、あまり話さないでください.
分析:水題、コードを見ましょう.
ACソース(C言語):
 1 #include<stdio.h>
 2 
 3 int main()
 4 {
 5     int M,k,i,Sumday;
 6     while(scanf("%d%d",&M,&k)==2)
 7     {
 8         if(M==0&&k==0) break;
 9         Sumday=0;
10         i=0;
11         while(M)
12         {
13             M-=1;
14             i+=1;
15             Sumday+=1;
16             if(i==k)
17             {
18                  M+=1;
19                  i=0;               /*i */
20             }
21         }
22         printf("%d
",Sumday); 23 } 24 return 0; 25 }

2013-05-03