HDOJ 1865

点击打开链接


输入用字符串输入,存入数组中,题目的数据最大250位


代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int s[1010][250];
void f()
{
    memset(s,0,sizeof(s));
    s[1][0]=1;s[2][0]=2;
    for(int i=3;i<=1000;i++){
        for(int j=0;j<250;j++){
            s[i][j]+=s[i-1][j]+s[i-2][j];
            if(s[i][j]>=10){
               s[i][j]=s[i][j]%10;
               s[i][j+1]++;
            }
        }
    }
}
int main()
{
    int t,c,n;
    string str;
    f();
    cin>>t;
    while(t--){
        cin>>str;
        n=str.size();
        c=249;
        while(c--){
            if(s[n][c]!=0)
                break;
        }
        for(;c>=0;c--)
            cout<<s[n][c];
        cout<<endl;
    }
    return 0;
}



 
 



上一篇:HDOJ 1297


下一篇:文件的压缩与解压XZip,XUnzip