2023年C++国赛试卷
试卷题目预览
1.以下程序输出结果是什么?

2、以下程序输出结果是什么?

以下程序输出结果是什么?

点A(3,4)和点B(8,12)之间的曼哈顿距离是多少?
以下关于vector的说法正确的是:
大小固定
超市收银
小明正在为超市开发智能收银系统。顾客购买商品时,系统需要计算总价并自动应用折扣:
购物满100元减10元
购物满200元减30元:
请编写实现自动计算应付金额的程序。
输入格式:
第一行:整数n(商品数量)
第二行:n个空格分隔的浮点数(商品价格)
输出格式:
保留两位小数的应付金额
输入样例:
3
45.5 120.0 34.5
输出样例:
190.00
样例解释:
原价:45.5+120+34.5=200元
满足200元减30元优惠:200-30=170元
数据约束:
1 ≤ n ≤ 100
0.01 ≤ 价格 ≤ 1000.00
计分
题目描述:
学校运动会需要统计各班得分。比赛结束后,各班得分记录可能存在重复,需要去重后计算总分。
请编写程序对输入的得分列表去重后求和。
输入格式:
第一行:整数n(得分记录数量)
第二行:n个空格分隔的整数(可能有重复)
输出格式:
去重后的总分
输入样例:
6
5 3 5 7 3 9
输出样例:
24
样例解释:
去重后得分:5,3,7,9 → 5+3+7+9=24
数据约束:
1 ≤ n ≤ 1000
0 ≤ 得分 ≤ 100
灌溉
农场安装智能灌溉系统,农田被划分为n×n网格。每个网格的湿度值代表灌溉需求(0-100),系统每次只能灌溉整行或整列。请你编写程序找出灌溉需求最高的行或列。
输入格式:
第一行:整数n(网格大小)
随后n行:每行n个空格分隔的整数
输出格式:
最高需求值及其类型(行/列)和序号
格式:"R|C 序号 值"(R行/C列)
输入样例:
3
10 20 30
40 50 60
70 80 90
输出样例:
C 2 180
样例解释:
行总和:R0=60, R1=150, R2=240
列总和:C0=120, C1=150, C2=180
最高需求是第2列(索引从0开始)180
数据约束:
2 ≤ n ≤ 50
0 ≤ 湿度值 ≤ 100
借阅管理
图书馆需要统计最受欢迎的图书。借阅记录格式为"日期-书号",书号出现次数最多的就是最受欢迎图书。
请编写程序找出出现次数最多的书号(如有并列取书号小的)。
样例解释:
A102出现3次,B205出现1次,C307出现1次
数据约束:
1 ≤ n ≤ 1000
书号格式:字母+数字(长度3-5)
第一行:整数n(记录数量) 随后n行:每行格式"YYYYMMDD-ID"
最受欢迎的书号
5 20230501-A102 20230502-B205 20230501-A102 20230503-C307 20230502-A102
A102
导航系统
学校道路系统升级,每条道路有不同长度。计算从校门(1号)到教学楼(n号)的最短路径长度。请编写程序实现求最短路径。
输入格式:
第一行:n(地点数)m(道路数)
随后m行:每行三个整数a b L(a和b相通,道路长度L)
输出格式:
最短路径长度(不可达输出-1)
样例解释:
最短路径:1→3→4(2+6=8)
实际最短路:1→2→4(5+1=6)
数据约束:
2 ≤ n ≤ 100
1 ≤ m ≤ 500
1 ≤ L ≤ 100
4 4 1 2 5 1 3 2 2 4 1 3 4 6
6