写了两个小时都没写出来,代码越改越乱
代码如下
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long n,a[5005]={0,1,2};
cin>>n;
for(int i=3;i<=n;i++)
{
char s1[5501],s2[5501];
for(int j=a[i-1];j>=0;j/=10) s1[j]=j%10;
for(int j=a[i-2];j>=0;j/=10) s2[j]=j%10;
int a1[5010]={0},a2[5010]={0},a3[5010]={0};
int a=strlen(s1),b=strlen(s2),c=0;
for(int j=0;j<a;i++) a1[j]=s1[a-j-1]-'0';
for(int j=0;j<b;i++) a2[j]=s2[b-j-1]-'0';
int x=0;
c=max(a,b);
for(int j=0;j<c;j++)
{
a3[j]=a1[j]+a2[j]+x;
x=a3[j]/10;
a3[j]=a3[j]%10;
}
if(x) a3[c++]=1;
for(int j=c-1;j>=0;j--) cout<<a3[j];
}
return 0;
}