admin 管理员组

文章数量: 1086019


2024年4月30日发(作者:linux的安装方式有哪几种)

青少年软件编程(C语言)等级考试试卷(四级)

分数:100 题数:4

一、编程题(共4题,共100分)

1. 怪盗基德的滑翔翼

怪盗基德是一个充满传奇色彩的怪盗,专门以珠宝为目标的超级盗窃犯。而他最为突出的地方,就是

他每次都能逃脱中村警部的重重围堵,而这也很大程度上是多亏了他随身携带的便于操作的滑翔翼。

有一天,怪盗基德像往常一样偷走了一颗珍贵的钻石,不料却被柯南小朋友识破了伪装,而他的滑翔

翼的动力装置也被柯南踢出的足球破坏了。不得已,怪盗基德只能操作受损的滑翔翼逃脱。

假设城市中一共有N幢建筑排成一条线,每幢建筑的高度各不相同。初始时,怪盗基德可以在任何一

幢建筑的顶端。他可以选择一个方向逃跑,但是不能中途改变方向(因为中森警部会在后面追击)。

因为滑翔翼动力装置受损,他只能往下滑行(即:只能从较高的建筑滑翔到较低的建筑)。他希望尽

可能多地经过不同建筑的顶部,这样可以减缓下降时的冲击力,减少受伤的可能性。请问,他最多可

以经过多少幢不同建筑的顶部(包含初始时的建筑)?

时间限制:1000

内存限制:65536

输入

输入数据第一行是一个整数K(K < 100),代表有K组测试数据。 每组测试数据包含两行:第一行

是一个整数N(N < 100),代表有N幢建筑。第二行包含N个不同的整数,每一个对应一幢建筑的高度

h(0 < h < 10000),按照建筑的排列顺序给出。

输出

对于每一组测试数据,输出一行,包含一个整数,代表怪盗基德最多可以经过的建筑数量。

样例输入

3

8

300 207 155 299 298 170 158 65

8

65 158 170 298 299 155 207 300

10

2 1 3 4 5 6 7 8 9 10

样例输出

6

6

9

试题编号:-4-01

试题类型:编程题

标准答案:

试题难度:一般

试题解析:

展示地址:点击浏览

考生答案:(此题已作答)

考生得分:0

是否评分:已评分

评价描述:

2. 数字组合

有n个正整数,找出其中和为t(t也是正整数)的可能的组合方式。如: n=5,5个数分别为1,2,3,4,5,

t=5; 那么可能的组合有5=1+4和5=2+3和5=5三种组合方式。

时间限制:1000

内存限制:65536

输入

输入的第一行是两个正整数n和t,用空格隔开,其中1<=n<=20,表示正整数的个数,t为要求的和

(1<=t<=1000) 接下来的一行是n个正整数,用空格隔开。

输出

和为t的不同的组合方式的数目。

样例输入

5 5

1 2 3 4 5

样例输出

3

试题编号:-4-02

试题类型:编程题

标准答案:

试题难度:一般

试题解析:

#include

using namespace std;

int a[25],n,t,ans;

void dfs(int i,int sum){

if(i==n){

if(t==sum){

ans++;

}

return;

}

i++;

dfs(i,sum+a[i]);

dfs(i,sum);

}

int main(){

cin>>n>>t;

for(int i=1;i<=n;i++){

cin>>a[i];

}

dfs(0,0);

cout<

return 0;

}

展示地址:点击浏览

考生答案:(此题已作答)

考生得分:25

是否评分:已评分

评价描述:

3. 带通配符的字符串匹配

通配符是一类键盘字符,当我们不知道真正字符或者不想键入完整名字时,常常使用通配符代替一个

或多个真正字符。通配符有问号(?)和星号(*)等,其中,“?”可以代替一个字符,而“*”可以代替零个或多


本文标签: 建筑 通配符 字符