链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
题目描述
现在有一个大小n*1的收纳盒,我们手里有无数个大小为1*1和2*1的小方块,我们需要用这些方块填满收纳盒,请问我们有多少种不同的方法填满这个收纳盒
输入描述:
第一行是样例数T 第2到2+T-1行每行有一个整数n(n<=80),描述每个样例中的n。
输出描述:
对于每个样例输出对应的方法数
#include<stdio.h>
long long int fangfa(long long int n)
{
long long int a[81];
a[1]=1;
a[2]=2;
for(int i=3;i<=n;i++)
{
a[i]=a[i-1]+a[i-2];
}
return a[n];
}
int main()
{
int T;
long long int n;
scanf("%d",&T);
for(int i=0;i<T;i++)
{
scanf("%lld",&n);
printf("%lld\n",fangfa(n));
}
return 0;
}
动态规划,可以看成斐波那契数列,已知第一个数和第二个数的数据,求第n个的数据
链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
题目描述
打印数字三角形,从1开始输出,第i行输出i个数,每个数字按4个位置输出
注:c语言中 %4d可以输出一个数,占据四个位置,右对齐。
输入描述:
输入一行,包含一个整数n 1 <= n <= 1000
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
int count=1;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=i;j++)
{
printf("%4d",count);
count++;
}
printf("\n");
}
return 0;
}