这题不要用递归,找规律就行了
by skiy_gyx @ 2018-07-27 15:02:32
```cpp
#include<bits/stdc++.h>
using namespace std;
int a[10000010];
void cheng(int a[]){//高精度乘法
for(int i=1;i<=a[0];i++){
a[i]*=2;
}
for(int i=1;i<=a[0];i++){
a[i+1]+=a[i]/10;
a[i]%=10;
}
while(a[a[0]+1]){
a[0]++;
a[a[0]+1]+=a[a[0]]/10;
a[a[0]]%=10;
}
}
void shuchu(int a[]){
for(int i=a[0];i>=1;i--){
cout<<a[i];
}
cout<<endl;
}
int main(){
int n;
cin>>n;
if(n==0){//若n是0,输出0
cout<<0<<endl;
return 0;
}
a[0]=a[1]=1;//初始化
for(int i=2;i<=n;i++){
cheng(a);//每次乘2
a[1]++;//因为不可能进位(个位不可能是9),直接在个位上加1就行了
}
shuchu(a);//输出
return 0;
}
```
by skiy_gyx @ 2018-07-27 15:05:44
谢谢
by 正式AFO @ 2018-09-09 10:48:08