1 条题解
-
2
(~ ̄▽ ̄)~
#include<bits/stdc++.h> using namespace std; string he(string n,string m) { int a[3000]={0},b[3000]={0},c[3000]={0}; string r; for(int i=0;i<n.size();i++) { a[i]=n[n.size()-1-i]-'0'; } for(int i=0;i<m.size();i++) { b[i]=m[m.size()-1-i]-'0'; } int len=n.size(); if(m.size()>n.size()) len=m.size(); for(int i=0;i<len;i++) { c[i]=c[i]+a[i]+b[i]; if(c[i]>=10) { c[i+1]=c[i+1]+c[i]/10; c[i]=c[i]%10; } } if(c[len]!=0) len++; for(int i=len-1;i>=0;i--) { r=r+(char)(c[i]+'0'); } return r; } string cheng(string h) { int a[3000]={0}; string r; for(int i=0;i<h.size();i++) { a[i]=h[h.size()-1-i]-'0'; } for(int i=0;i<h.size();i++) { a[i]=a[i]*2; } for(int i=0;i<h.size();i++) { if(a[i]>=10) { a[i+1]=a[i+1]+a[i]/10; a[i]=a[i]%10; } } int len=h.size(); if(a[len]!=0) len++; for(int i=len-1;i>=0;i--) { r=r+to_string(a[i]); } return r; } int main(){ int n; cin>>n; string x,y,z; x="1"; y="2"; if(n==1) cout<<x; else if(n==2) cout<<y; else { for(int i=3;i<=n;i++) { z=he(cheng(y),x); x=y; y=z; } cout<<z; } return 0; }
- 1
信息
- ID
- 375
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 6
- 标签
- (无)
- 递交数
- 141
- 已通过
- 38
- 上传者