目录
1. 小球第n次反弹的高度
题目正文:一个球从100m高度落下,每次反弹是之前高度的一半,求第n次反弹多高?(即,第一次50m,第二次25m......)
输入输出说明:
输入:1
输出:50
初始代码:
#include "iostream"
using namespace std;
int main()
{
//write your own codes
return 0;
}
示例代码:
#include "iostream"
#include <cmath>
using namespace std;
int main()
{
int n;
cin>>n;
float result=100.0/(pow(2,n));
cout<<result<<endl;
return 0;
}
2. 0~99之间的一串随机数
【题目描述】
在计算机中,通常采用线性同余法产生随机数,即随机数序列a0, a1, …, an满足:
a0 = seed,
an = (b*an-1 + c) % m ,n = 1, 2, ……
其中,b≥0,c≥0,m>0,seed≤m。
seed称为随机种子,当b、c和m的值确定后,给定一个随机种子,由式产生的随机数序列也就确定了。
输入seed,b,c,m 输出随机序列的前5项 (a0到a4)
【输入格式】
一行4个整数分别表示 seed ,b,c,m
【输出格式】
一行4个整数表示随机序列的前4项(!! 注意: 中间有两个空格分隔)
【样例输入】
10 2 4 5
【样例输出】
a0 10
a1 4
a2 2
a3 3
a4 0
示例代码:
#include <iostream>
using namespace std;
int main()
{
int seed,b,c,m,a[5];
cin>>seed>>b>>c>>m;
a[0]=seed;
cout<<"a0"<<" "<<seed<<endl;
for (int i=1;i<=4;i++)
{
a[i]=(b*a[i-1]+c)%m;
cout<<"a"<<i<<" "<<a[i]<<endl;
}
return 0;
}
3. 公共子序列
【题目描述】
对主串s按序号递增的顺序选出一个子串t,称t是s的子序列。
例如,对于主串s="abcbda",子串"bcd"是s的一个子序列。
给定两个主串s1和s2,当子串t既是s1的子序列又是s2的子序列时,称t是s1和s2的公共子序列。
例如,主串s1="abcbda",主串s2="abcab",子串"acb"是主串s1和s2的公共子序列。
要求编写程序,判断给定的子串是否为两个主串的公共子序列。
【输入格式】
一行三个字符串(中间用一个空格分隔),分别表示两个主串 s1,s2 和 t
【输出格式】
按要求输出 "yes" 或 "no" (不带引号)
【样例输入1】
abcdef abcffff abc
【样例输出1】
yes
【样例输入2】
abcdef ffff abc
【样例输出2】
no
示例代码:
#inclu