1 /*Hangover
 2 时间限制:1000 ms  |  内存限制:65535 KB 
 3 难度:1
 4 描述 
 5 
 6 How far can you make a stack of cards overhang a table? If you have one card, you can create a maximum overhang of half a card length. (We're assuming that the cards must 
 7 be perpendicular to the table.) With two cards you can make the top card overhang the bottom one by half a card length, and the bottom one overhang the table by a third of
 8  a card length, for a total maximum overhang of 1/2 + 1/3 = 5/6 card lengths. In general you can make n cards overhang by 1/2 + 1/3 + 1/4 + ... + 1/(n + 1) card lengths, 
 9  where the top card overhangs the second by 1/2, the second overhangs tha third by 1/3, the third overhangs the fourth by 1/4, etc., and the bottom card overhangs the table
10   by 1/(n + 1). This is illustrated in the figure below.
11 
12 输入
13 The input consists of one or more test cases, followed by a line containing the number 0.00 that signals the end of the input. Each test case is a single line 
14 containing a positive floating-point number c whose value is at least 0.01 and at most 5.20; c will contain exactly three digits.
15 输出
16 For each test case, output the minimum number of cards necessary to achieve an overhang of at least c card lengths. Use the exact output format shown in the examples.
17 样例输入
18 1.00
19 3.71
20 0.04
21 5.19
22 0.00样例输出
23 3 card(s)
24 61 card(s)
25 1 card(s)
26 273 card(s)来源
27 POJ
28 上传者
29 iphxer
30 */
31 #include<stdio.h>
32 int main()
33 {
34     double n;
35     while( scanf("%lf", &n ) != EOF )
36     {
37         if( n == 0.00 ) break;
38         double length=0, i;
39         for(i = 2.0; length < n ; i++)
40         length += 1.0/i;
41         printf("%d card(s)\n", (int)i-2 );
42     }
43     return 0;
44 }