百度之星4月27日题目一

题目是: 程序员

小H是一个程序员。可是他很喜欢一些新奇的东西。 app

有一次,他去找物理实验室的朋友玩。他见到了一串很是有意思的粒子。N个粒子排成一排。每一秒中,每一段连续的粒子中会随意有一个爆炸,爆炸后该粒子就消失了,且将原来连续的一段粒子分隔成两段。 测试

小H但愿知道全部粒子都爆炸完的指望时间。 spa

Input .net

         第一行为一个整数T(1 <= T<= 400),表示有T组测试数据; blog

         每组数据一个正整数N(1<=N<=400),表示一开始的粒子数。 ip

Output get

         对于每组数据,输出指望时间(秒)。保留五位小数。 flash

Sample Input
3
1
2
3
 
Sample Output
1.00000
2.00000
2.66667
 
Sample Cl.
对N=3,若第一个爆炸的粒子在旁边,则还需两秒;若第一个爆炸的在中间,则再过一秒便可。故答案为2/3*3+1/3*2=8/3。

代码以下
[cpp]  view plain copy
  1. float lizi(int n)  
  2. {  
  3.     float t=0;  
  4.     int i;  
  5.     if(n==0)  
  6.     {  
  7.         return 0;  
  8.     }  
  9.     else if(n==1)  
  10.     {  
  11.         return 1;  
  12.     }  
  13.     else if(n>1)  
  14.     {  
  15.        t = (2.0/n)*(lizi(n-1)+1);  
  16.       for(i=n-2;i>0;i--)  
  17.       {  
  18.           if(i>(n-2)/2)  
  19.               t+=(2.0/n)*lizi(i);  
  20.           else if(i==(n-2)/2)  
  21.               t+=(1.0/n)*lizi(i);  
  22.             
  23.       }  
  24.       return t;  
  25.     }  
  26.   
  27.   
  28.   
  29. }  
  30. int _tmain(int argc, _TCHAR* argv[])  
  31. {  
  32.     int num,i;  
  33.     float time;  
  34.     scanf("%d",&num);  
  35.     while(num<1||num>400){  
  36.         printf("整数T(1 <= T<= 400)\n");  
  37.         scanf("%d",&num);  
  38.     }  
  39.     int *test = (int *)malloc(num*sizeof(int));  
  40.     for(i=0;i<num;i++)  
  41.     {  
  42.         scanf("%d",test+i);  
  43.             while(*(test+i)<1||*(test+i)>400)  
  44.             {  
  45.             printf("粒子熟范围0<=n<=400\n");  
  46.             scanf("%d",test+i);  
  47.            }  
  48.     }  
  49.     for(i=0;i<num;i++)  
  50.     {  
  51.     //printf("%d\n",test[i]);  
  52.     time = lizi(test[i]);  
  53.     printf("%.5f\n",time);  
  54.     //system("pause");  
  55.     }  
  56.     //printf("%f",time);  
  57.     system("pause");  
  58.     return 0;  
  59. }  
这道题目不算太难,不过提有意思的,PS:提交时没注意保留小数点5位,分数被扣光了。。
相关文章
相关标签/搜索