zoukankan      html  css  js  c++  java
  • hdu 1297

    Children’s Queue

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 8780    Accepted Submission(s): 2789
    Problem Description
    There are many students in PHT School. One day, the headmaster whose name is PigHeader wanted all students stand in a line. He prescribed that girl can not be in single. In other words, either no girl in the queue or more than one girl stands side by side. The case n=4 (n is the number of children) is like FFFF, FFFM, MFFF, FFMM, MFFM, MMFF, MMMM Here F stands for a girl and M stands for a boy. The total number of queue satisfied the headmaster’s needs is 7. Can you make a program to find the total number of queue with n children?
     
    Input
    There are multiple cases in this problem and ended by the EOF. In each case, there is only one integer n means the number of children (1<=n<=1000)
     
    Output
    For each test case, there is only one integer means the number of queue satisfied the headmaster’s needs.
     
    Sample Input
    1 2 3
     
    Sample Output
    1 2 4
    大数问题:
    规律 f(n)=f(n-1)+f(n-2)+f(n-4)
     
    #include<stdio.h>
    int a[1001][300];
    int main()
    {
     int i,j,n,t;
     a[1][0]=1;
     a[2][0]=2;
     a[3][0]=4;
     a[4][0]=7;
     for(i=5;i<=1001;i++)//打表
     {  
     t=0;
      for(j=0;j<300;j++)//表示数的位数  
     {   
     a[i][j]=a[i-1][j]+a[i-2][j]+a[i-4][j]+t;  
      t=0;   
     if(a[i][j]>9)   
     {    
     t=a[i][j]/10;  
       a[i][j]%=10;   
     }  
     } 
     }
     while(scanf("%d",&n)!=EOF)
     {   
     for(i=299;i>=0;i--)//忽略前导的0  
      if(a[n][i])   
      break;  
     for(j=i;j>=0;j--)    
     printf("%d",a[n][j]);  
      printf(" ");
     }  
    return 0;
    }
  • 相关阅读:
    1014 Waiting in Line (30)(30 point(s))
    1013 Battle Over Cities (25)(25 point(s))
    1012 The Best Rank (25)(25 point(s))
    1011 World Cup Betting (20)(20 point(s))
    1010 Radix (25)(25 point(s))
    1009 Product of Polynomials (25)(25 point(s))
    1008 Elevator (20)(20 point(s))
    1007 Maximum Subsequence Sum (25)(25 point(s))
    1006 Sign In and Sign Out (25)(25 point(s))
    1005 Spell It Right (20)(20 point(s))
  • 原文地址:https://www.cnblogs.com/lxm940130740/p/3227949.html
Copyright © 2011-2022 走看看