renhan0708 @ 2024-10-24 21:37:40
#include<bits/stdc++.h>
using namespace std;
int i,j;
int a1[5000],b1[5000],c1[5000];
string a2,b2;
string add_bigint(string a,string b)
{
string c;
int len_a=a.length(),len_b=b.length();
for(i=len_a-1,j=1;i>=0;i--,j++)
{
a1[j]=a[i]-'0';
}
for(i=len_b-1,j=1;i>=0;i--,j++)
{
b1[j]=b[i]-'0';
}
for(i=1;i<=max(len_a,len_b);i++)
{
c1[i]+=a1[i]+b1[i];
c1[i+1]+=c1[i]/10;
c1[i]%=10;
}
int len_1=max(len_a,len_b);
if(c1[len_1+1])
{
len_1++;
}
for(i=len_1,j=0;i>=1;i--,j++)
{
c[j]=c1[i]+'0';
}
/*
for(i=len_1;i>=1;i--)
{
cout<<c1[i];
}*/
return c;
}
string f[5010];
int main()
{
f[1]="1";
f[2]="2";
int n=0,z=0;
cin>>n;
for(z=3;z<=n;z++)
{
f[z]=add_bigint(f[z-1],f[z-2]);
}
cout<<f[n];
return 0;
}
玄关求助,无输出