CCF GESP 2024年3月认证 C++ 2级

编程题
共 2 道 每题 25 分 共计 50 分
第 1 题
乘法问题
时间限制:1s 内存限制:512MB

题目描述

小 A 最近刚刚学习了乘法,为了帮助他练习,我们给他若干个正整数,并要求他将这些数乘起来。对于大部分题目,小 A 可以精准地算出答案,不过,如果这些数的乘积超过 $10^6$,小 A 就不会做了。请你写一个程序,告诉我们小 A 会如何作答。

输入格式

第一行一个整数 $n$,表示正整数的个数。

接下来 $n$ 行,每行一个整数 $a$ 。小 A 需要将所有的 $a$ 乘起来。

保证 $n ≤ 50,a ≤ 100$ 。

输出格式

输出一行,如果乘积超过 $10^6$,则输出 >1000000;否则输出所有数的乘积。

特别提醒

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

样例说明

样例 1

输入:
2
3
5
输出:
15

样例 2

输入:
3
100
100
100
输出:
1000000

样例 3

输入:
4
100
100
100
2
输出:
>1000000
第 2 题
小杨的日字矩阵
时间限制:1s 内存限制:512MB

题目描述

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

|---|
|xxx|
|---|
|xxx|
|---|

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

输入格式

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

输出格式

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

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

特别提醒

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

样例说明

样例 1

输入:
5
输出:
|---|
|xxx|
|---|
|xxx|
|---|

样例 2

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