2024年信息素养大赛 C++ 复赛真题

四季读书网 2 0
2024年信息素养大赛 C++ 复赛真题

题目是 2024 年全国青少年信息素养大赛 C++ 算法创意实践挑战赛复赛真题。一共 6 道编程题,下面先放题目,后面附真题pdf,参考答案和逐题解析。

第 1 题:计算长方形面积

题目描述

在一个宁静的小镇上,有位园丁想为她的玫瑰花地建围栏。这片花地是个长方形,长度 10 米,宽度 5 米。但园丁不知道怎么计算玫瑰花地的面积,于是他向小兔子求助。聪明的小兔子告诉园丁:"要计算长方形的面积,只需将长度乘以宽度。"于是,园丁算出玫瑰花地的面积是 50 平方米。

现在园丁又开辟了一块玫瑰花地,形状也是规则的长方形,园丁通过上面的方法计算出玫瑰花地的面积。

输入描述

一行,两个正整数 a b,中间用空格隔开,分别代表长方形的长和宽。

输出描述

一行,一个正整数,代表玫瑰花地的面积。

样例 1 输入

1 1

样例 1 输出

1

样例 2 输入

10 5

样例 2 输出

50

数据范围

a 和 b 均为不超过 10000 的正整数

第 2 题:判断三角形类型

题目描述

在一个小镇上,有一位名叫艾米的小女孩,她非常喜欢观察各种形状。一天,她在公园里发现了一块奇特的三角形玻璃。这块玻璃不仅外形完美,还能反射出七彩的光芒。艾米觉得这块三角形玻璃一定有神秘的力量,于是她把它带回家仔细研究。几天后,艾米发现这块三角形玻璃可以用来聚焦阳光,点燃火柴。这个发现让她惊喜不已,也激发了她对数学的浓厚兴趣。

现在艾米想知道这块三角形玻璃的形状:

  1. 如果三角形的三条边都相等,那么这个三角形是等边三角形;
  2. 如果三角形中有两条边的长度相等,那么这个三角形是等腰三角形;
  3. 如果三角形的一条边长的平方等于另外两条边长的平方和,那么这个三角形是直角三角形。

输入三角形的三边长度,判断该三角形是等腰三角形、直角三角形还是等边三角形。

如果是等腰三角形,输出 Isosceles glass

如果是等边三角形,输出 Equilateral glass

如果是直角三角形,输出 Right angle glass

如果三者都不是,输出 None

输入描述

输入只有一行,三个正整数,代表三角形的三条边长,之间用空格隔开。

输出描述

输出只有一行,一个字符串。

样例 1 输入

1001 1001 1

样例 1 输出

Isosceles glass

样例 2 输入

3 4 5

样例 2 输出

Right angle glass

样例 3 输入

5 1 2

样例 3 输出

None

数据范围

输入的正整数不超过 10000

第 3 题:柜子操作

题目描述

小男孩汤姆在家里的旧柜子里发现了一本古老的日记。日记中记录了一个失落王国的秘密和一条通往宝藏的路径。好奇心驱使他按照日记的指引,找到了一扇隐藏在树林深处的石门。

打开石门后,他进入了一个神秘的地下世界,里面充满了奇珍异宝。回到家后,汤姆把日记放回柜子,从此期待每一次新的探索与发现。

小男孩汤姆家的柜子是一个长方体,由很多小柜子组成。汤姆一共有 n 次操作,分为两种类型:

第一种类型:M i j k:汤姆往第 i 行第 j 列的柜子里存入日记,并在日记上面写下编号 k

第二种类型:N i j:汤姆取出第 i 行第 j 列柜子里的日记,输出日记的编号(保证取出的柜子里有日记)。

输入描述

输入一共 n+1 行:第一行只有一个整数 n,表示操作次数;

接下来 n 行,每行表示一次操作,M 代表第一种类型,N 代表第二种类型,具体操作如题目描述所示。

输出描述

对于每次查询操作,输出答案,以换行符隔开。

样例 1 输入

2M 2 3 0N 2 3

样例 1 输出

0

样例 2 输入

4M 3 1000 1101M 1 1 1N 3 1000N 1 1

样例 2 输出

11011

数据范围

1 <= i <= 10001 <= j <= 10001 <= k <= 10000

第 4 题:计算格子地板中的正方形数量

题目描述

在一个神奇的王国里,有一块 n 行 m 列的格子地板。每个格子都是一个正方形,里面藏着一个秘密。小男孩阿力得到了一张古老的地图,上面标注了这些格子的谜题和宝藏。

每天放学后,阿力都会来到这片地板上解开一个新的谜题。有时是数学问题,有时是历史故事,还有时是自然现象。随着他不断探索,他不仅找到了许多宝藏,还学到了无数知识。最终,阿力成为了村里最聪明的小孩,那片格子地板也成了他心中永远的冒险乐园。

阿力想知道格子地板里包含多少个正方形,他需要想出一个高效的办法。

输入描述

输入只有一行,两个整数 n m,中间用空格隔开,代表格子地板大小为 n 行 m 列。

输出描述

输出只有一行,一个整数,代表格子地板里包含多少个正方形。

样例 1 输入

2 4

样例 1 输出

11

补充样例 2 输入

1 1

补充样例 2 输出

1

数据范围

n 和 m 均为不超过 100 的正整数

第 5 题:字符串操作

题目描述

小 A 在旅途中遇到了很多字符串 str,随着小 A 不断地结交朋友,它的长度也逐渐变长,具体有两种变长操作:

F str:前插入。表示在字符串小 A 前面插入字符串 str

B str:后插入。表示在字符串小 A 后面插入字符串 str

R:表示反转整个字符串。

规定字符串小 A 的初始模样和每次操作的 str 都不含空格或换行。请你计算出字符串小 A 旅途结束后的模样。

输入描述

输入共 n+2 行:

第一行,输入一个正整数 n,表示操作次数;

第二行,输入一个字符串 str,表示文档最开始的字符串;

从第三行开始,往下 n 行,每行表示一个操作。

输出描述

输出只有一行,一个字符串。

样例 1 输入

3TomF htB utR

样例 1 输出

tumoTth

补充样例 2 输入

2abcF xB y

补充样例 2 输出

xabcy

数据范围

1 <= n <= 1000

字符串小 A 的初始长度和每次插入的字符串 str 的长度均不大于 100

第 6 题:判断水平相当的同学对数

题目描述

游泳是一项广受欢迎的运动和娱乐活动。期末考试项目包括自由泳、仰泳、蛙泳和蝶泳一共四门课程,每门成绩均为不超过 100 的整数。

John 和 Mary 这两位同学四门课总分的差值不超过 20 分,并且每门课成绩的差值都不超过 10 分,那么老师就可以把 John 和 Mary 认定为水平相当。班里一共有 n 名同学,现在老师想知道这 n 名同学中,有多少对同学水平相当。

输入描述

输入一共 n+1 行:

第一行只有一个正整数 n,代表 n 名同学。

接下来 n 行,每行四个不超过 100 的整数,分别代表每位同学的自由泳、仰泳、蛙泳和蝶泳成绩,之间用空格隔开。

输出描述

输出只有一行,一个数字,代表有几对同学水平相当。

样例 1 输入

425 25 25 2590 95 25 2156 100 91 2261 92 31 12

样例 1 输出

1

补充样例 2 输入

380 80 80 8085 82 78 83100 100 100 100

补充样例 2 输出

1

数据范围

1 <= n <= 1000

每门成绩均为不超过 100 的整数

整体评价

2024 年小学组复赛整体难度不高,6 道题梯度比较明显。

前两题是基础送分题:第一题考输入输出,第二题考 if-else 条件判断。

第三题考二维数组模拟,第四题需要一点数学思维推导公式。

第五题考字符串基本操作和读入细节,第六题考双重循环枚举 + 多条件组合判断。

信息素养复赛的定位本来也不是拼难题,而是看孩子能不能把题读懂、把代码写对、把边界条件想清楚。

还是提醒一下,复赛的时候不要把题目想得太难了。

真题的pdf和答案解析,私信我  “真题” , 自动发送。

抱歉,评论功能暂时关闭!