1 条题解
-
0
C :
#include<stdio.h> #include<string.h> #include<math.h> char f[2000][20000]; void plus(int a){ int i,c=0,n; for(i=0;i<strlen(f[a-1]);i++){ if(f[a-2][i]==0) n=f[a-1][i]-'0'+c; else n=f[a-1][i]-'0'+f[a-2][i]-'0'+c; f[a][i]=n%10+'0'; c=n/10;} if(c) f[a][i]=c+'0';} int main(){ int a,b; while(scanf("%d%d",&a,&b)!=EOF){ int n=b-a,i; memset(f,0,sizeof(f)); strcpy(f[0],"1"); strcpy(f[1],"1"); for(i=2;i<=n;i++) plus(i); for(i=strlen(f[n])-1;i>=0;i--) printf("%c",f[n][i]); puts("");} return 0;}
C++ :
#include<iostream> using namespace std; int move(int n) { if(1==n || 2==n) return 1; if(3==n) return 2; else { return move(n-1)+move(n-2); } } int main() { int m,n; cin>>m>>n; cout<<move(n-m+1)<<endl; return 0; }
- 1
信息
- ID
- 2606
- 时间
- 1000ms
- 内存
- 64MiB
- 难度
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 上传者