Description
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 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 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, 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 by 1/(n + 1). This is illustrated in the figure below.
![](https://images2015.cnblogs.com/blog/881327/201703/881327-20170327235138514-1890276403.jpg)
Input
Output
Sample Input
1.00 3.71 0.04 5.19 0.00
Sample Output
61 card(s)
1 card(s)
1 import java.util.*; 2 public class Main { 3 public static float totalLength(int n){ 4 if(n==1) 5 return (float)1/2; 6 return (float)1/(n+1)+totalLength(n-1); 7 } 8 9 public static void main(String[] args) { 10 Scanner scanner=new Scanner(System.in); 11 float temp; 12 int i; 13 while((temp=scanner.nextFloat())!=0.00f){ 14 for(i=1;temp>totalLength(i);i++); 15 System.out.println(i+" card(s)"); 16 } 17 } 18 }
做题感悟:原来POJ上也有水题,就当保持手感。