三国佚事——巴蜀之危
Time Limit: 1000 ms Memory Limit: 65536 KiB
Submit Statistic
Problem Description
话说天下大势,分久必合,合久必分。。。却道那魏蜀吴三国鼎力之时,多少英雄豪杰以热血谱写那千古之绝唱。古人诚不我欺,确是应了那句“一将功成万骨枯”。
是夜,明月高悬。诸葛丞相轻摇羽扇,一脸愁苦。原来是日前蜀国战事吃紧,丞相彻夜未眠,奋笔急书,于每个烽火台写下安排书信。可想,这战事多变,丞相运筹 帷幄,给诸多烽火台定下不同计策,却也实属不易。
谁成想这送信小厮竟投靠曹操,给诸葛丞相暗中使坏。这小厮将每封书信都投错了烽火台,居然没有一封是对的。不多时小厮便被抓住,前后之事却也明朗。这可急坏了诸葛丞相,这书信传错,势必会让蜀军自乱阵脚,不攻自破啊! 诸葛丞相现在想知道被这小厮一乱,这书信传错共有多少种情况。
Input
题目有多组数据,处理到文件结尾,丞相共写了n(1 <= n <= 20)封书信,输入一个正数n。
Output
输出书信传错的情况数。
Sample Input
1
3
6
Sample Output
0
2
265
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n,i;
long long int a[21];
while(scanf("%d",&n)!=EOF)
{
a[1]=0;
a[2]=1;
for(i=3;i<=n;i++)
{
a[i]=(i-1)*(a[i-1]+a[i-2]);
}
printf("%lld\n",a[n]);
}
return 0;
}
错排公式。
养兔子
Time Limit: 1000 ms Memory Limit: 65536 KiB
Submit Statistic
Problem Description
一对成熟的兔子每天能且只能产下一对小兔子,每次都生一公一母,每只小兔子的成熟期是1天,小兔子出生后隔一天才能再生小兔子。第一天某人领养了一对成熟的兔子,一公一母,请问第N天以后,他将会得到多少对兔子。
Input
测试数据包括多组,每组一行,为整数n(1≤n≤90)。
输入以0结束。
Output
对应输出第n天有几对兔子(假设没有兔子死亡现象,而且是一夫一妻制)。
Sample Input
1
2
0
Sample Output
1
2
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n,i;
long long int a[100];
while(scanf("%d",&n)&&n!=0)
{
a[1]=1;
a[2]=2;
for(i=3;i<=n;i++)
{
a[i]=a[i-1]+a[i-2];
}
printf("%lld\n",a[n]);
}
return 0;
}
C语言实验——拍皮球
Time Limit: 1000 ms Memory Limit: 65536 KiB
Submit Statistic
Problem Description
小瑜3岁了,很喜欢玩皮球,看来今后喜欢打篮球的^_^。最近她发现球从手中落下时,每次落地后反跳回原高度的一半,再落下,每次球落地时数球跳了几次,数到n次时爸爸在边上喊停,问小瑜现在球到底总共走了多少距离,小瑜故作沉思状,爸爸又问接下来小球能跳多高啊,小瑜摇摇头,心想还没跳我怎么知道啊,难道爸爸是神啊!这时的你在边上出主意想给小瑜写个程序计算一下,因此任务就交给你啦!假设球的初始高度为h,计算第n次落地时球经过的距离,以及落地后反弹能有多高。
Input
输入数据有多组,第一行为数据的组数t,下面t行为t组数据,每行有两个数h和n,分别用空格分隔。
Output
输出第n次反弹时球经过的距离和球最后的高度,保留小数点后2位。
Sample Input
2
100 1
100.0 2
Sample Output
100.00 50.00
200.00 25.00
#include <stdio.h>
#include <stdlib.h>
int main()
{
int t,n,i,j;
double h;
double a[1000];
double b[1000];
while(scanf("%d",&t)!=EOF)
{
for(i=1;i<=t;i++)
{
scanf("%lf %d",&h,&n);
a[1]=h/2.0;
b[1]=h;
for(j=2;j<=n;j++)
{
a[j]=a[j-1]/2.0;
b[j]=b[j-1]+2*a[j-1];
}
printf("%.2lf %.2lf\n",b[n],a[n]);
}
}
return 0;
}