2 条题解
-
0
#include<stdio.h> int numb(int n) { int arr[1000] = { 0 }; arr[1] = 1; arr[2] = 2; arr[3] = 3; arr[4] = 4; int i = 4; for (i = 4; i <= n; i++) { arr[i] = arr[i - 1] + arr[i - 3]; } int m = n; if (m <= 4) { return arr[m]; } else { return arr[i-1]; }
}
int main() { int n; while (scanf("%d", &n) &&n!=0) { printf("%d\n", numb(n)); } return 0; }
-
0
#include<stdio.h> int a[1005]; int main() { while(1){ int t; scanf("%d",&t); if(!t){ break; } a[1]=1,a[2]=2,a[3]=3,a[4]=4;//提前将前四个乌龟数写出 for(int i=5;i<=t;i++){//从第5个开始当下每个乌龟数均为前一年的加上三年前的 a[i]=a[i-1]+a[i-3];//因为三年前的所有乌龟在今年都能够生出小乌龟 } printf("%d\n",a[t]); } return 0; } //ps:a[1]为第一年的初始乌龟
- 1
信息
- ID
- 201
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 5
- 标签
- (无)
- 递交数
- 547
- 已通过
- 203
- 上传者