CCF GESP 2023年12月认证 C++ 2级

编程题
共 2 道 每题 25 分 共计 50 分
第 1 题
小杨做题
时间限制:1s 内存限制:128MB

题目描述

为了准备考试,小杨每天都要做题。第 $1$ 天,小杨做了 $a$ 道题;第 $2$ 天,小杨做了 $b$ 道题;从第 $3$ 天起,小杨每天做的题目数量是前两天的总和。

此外,小杨还规定,当自己某一天做了大于或等于 $m$ 题时,接下来的所有日子里,他就再也不做题了。

请问,到了第 $N$ 天,小杨总共做了多少题呢?

输入格式

总共 $4$ 行。第一行一个整数 $a$,第二行一个整数 $b$,第三行一个整数 $m$,第四行一个整数 $N$。

保证 $0 \le a,b \le 10$;$a,b<m<1,000,000$;$3 \le N \le 364$。

输出格式

一行一个整数,表示小杨 $N$ 天里总共做了多少题目。

特别提醒

在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。

样例说明

样例 1

输入:
1
2
10
5
输出:
19
样例解释:

小杨第一天做 1 题,第二天做 2 题,第三天做 1+2=3 题,第四天做 2+3=5 题,第五天做 3+5=8 题。因此他总共做了 1+2+3+5+8=19 题。

样例 2

输入:
1
1
5
8
输出:
12
样例解释:

小杨前 5 天分别做了 1,1,2,3,5 题,由于第 5 天小杨做了 5 题,而 m=5,于是小杨从此以后不再做题。因此小杨总共做了 1+1+2+3+5=12 题。

第 2 题
小杨的 H 字矩阵
时间限制:1s 内存限制:128MB

题目描述

小杨想要构造一个 $N \times N$ 的 H 字矩阵($N$ 为奇数),具体来说,这个矩阵共有 $N$ 行,每行 $N$ 个字符,其中最左列、最右列都是 | ,而中间一行(即第$\frac{N+1}{2}$行)的第 $2 \sim N-1$ 个字符都是 - ,其余所有字符都是半角小写字母 a。例如,一个 $N=5$ 的 H 字矩阵如下:

|aaa|
|aaa|
|---|
|aaa|
|aaa|

请你帮小杨根据给定的 $N$ 打印出对应的“H 字矩阵”。

输入格式

一行一个整数 $N$($5\le N \le 49$ ,保证 $N$ 为奇数)。

输出格式

输出对应的“H 字矩阵”。

请严格按格式要求输出,不要擅自添加任何空格、标点、空行等任何符号。你应该恰好输出 $N$ 行,每行除了换行符外恰好包含 $N$ 个字符,这些字符要么是 -,要么是 |,要么是 a你的输出必须和标准答案完全一致才能得分,请在提交前仔细检查

特别提醒

在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。

样例说明

样例 1

输入:
5
输出:
|aaa|
|aaa|
|---|
|aaa|
|aaa|

样例 2

输入:
7
输出:
|aaaaa|
|aaaaa|
|aaaaa|
|-----|
|aaaaa|
|aaaaa|
|aaaaa|
编程题部分已到底了。