《2022年第四届河南省程序设计大赛试题 .pdf》由会员分享,可在线阅读,更多相关《2022年第四届河南省程序设计大赛试题 .pdf(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第四届河南省大学生程序设计竞赛主办:河南省计算机学会承办:河南科技大学(正式赛)地点:河南科技大学时间:2011年 5 月 22 日名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 7 页 -所有题目时间限制:1 秒【T1】序号互换Dr.kong 设计了一个聪明的机器人卡多,卡多会对电子表格的单元坐标快速计算出来。单元格的行坐标是由数字编号的数字序号,而列坐标使用字母序号。观察字母序号,发现第1 列到第 26 列的字母序号分别为A,B,Z,接着,第27 列序号为 AA,第 28 列序号为 AB,依次类推。若给 Dr.kong 的机器人卡多一个数字序号(比如32),它能很快计算出等价
2、的字母序号(即AF),若给机器人一个字母序号(比如AA),它能很快出等价的数字序号(27),你能不能与卡多比试比试,看谁能算得更快更准确。【标准输入】第一行:N 表示有多少组测试数据接下来有 N 行,每行或者是一个正整数,或者是一个仅由大写字母组成的字符串。【标准输出】对于每一行测试数据,输出一行。如果输入为一个正整数序号,则输出等价的字母序号;如果输入为字符串,则输出等价的数字序号。【约束条件】输入保证,所有数字序号和字母对应的数字序号均=2*109【样例】标准输入标准输出3 27 G AA AA 7 27 名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 7 页 -【T2】节能
3、Dr.kong 设计的机器人卡多越来越聪明,最近市政府交给卡多一项任务,每天早上 5:00 开始,它负责关掉ZK大道右侧上所有的路灯。卡多每到早上 5:00 准会出现在 ZK大道某盏路灯的旁边,然后它开始关灯,每盏灯都有一定的功率,机器人卡多有着自觉地节能意识,它希望在关灯期间,ZK大道右侧上所有路灯的耗电量总数是最少的。机器人卡多以 1m/s 的速度行走,假设关灯动作不需要话费额外的时间,因为当它通过某盏路灯时就顺手将灯关掉。请你编写程序,计算在给定路灯设置,灯泡功率以及机器人卡多的起始位置的情况下,卡多关灯期间,ZK大道上所有灯耗费的最小能量。【标准输入】第一行:N 表示 ZK大道右侧路灯
4、的数量(2=N=1000)第二行:V 表示机器人卡多开始关灯的路灯号码。(1=V=N)接下来的 N行中,每行包含两个用空格隔开的整数D和 W;用来描述每盏灯的参数;D表示该路灯与 ZK大道起点的距离(用米为单位来表示);W表示灯泡的功 率,即 每 秒 该 灯 泡 所 消 耗 的 能 量 数。路 灯 是 按 顺 序 给 定 的。(0=D=1000,0=W=1000)【标准输出】输出一个整数,即消耗能量之和的最小值。注意结果小于200,000,000【样例】标准输入标准输入4 3 2 2 5 8 6 1 8 7 56 名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 7 页 -【T3】
5、表达式求值Dr.kong 设计的机器人卡多掌握了加减法运算以后,最近又学会了一些简单的函数求值,比如,它知道函数min(20,23)的值是 20,add(10,98)的值是 108等等。经过训练,Dr.kong 设计的机器人卡多甚至会计算一种嵌套的更复杂的表达式。假设表达式可以简单定义为:1、一个正的十进制数x 是一个表达式。2、如果 x 和 y 是表达式,则函数min(x,y)也是表达式,其值为x,y中的最小数。3、如果 x 和 y 是表达式,则函数max(x,y)也是表达式,其值为x,y中的最大数。4、如果 x 和 y 是表达式,则函数add(x,y)也是表达式,其值为x,y之和。例如,表
6、达式 add(max(add(1,2),7)的值为 7.请你编写程序,对于给定的一组表达式,帮助 Dr.kong 算出正确答案,以便校对卡多计算的正误。【标准输入】第一行:N 表示要计算的表达式个数(1=N=10)接下来有 N行,每行是一个字符串,表示待求值的表达式 (表达式中不会有多余的空格,每行不超过 300个字符,表达式中出现的十进制数都不超过1000)【标准输出】输出有 N行,每一行对应一个表达式的值。【样例】标准输入标准输出3 add(1,2)max(1,999)add(min(1,1000),add(100,99)3 999 200 名师资料总结-精品资料欢迎下载-名师精心整理-第
7、 4 页,共 7 页 -【T4】表达式求值Dr.kong 设计的机器人卡多非常爱玩,它常常偷偷跑出实验室,在某个游乐场玩之不疲。这天卡多又跑出来了,在SJTL游乐场玩个不停,坐完碰碰车,又玩滑滑梯,这时卡多又走入一个迷宫。整个迷宫是用一个N*N的方阵给出,方阵中单元格填充了一个整数,表示走到这个位置的难度。这个迷宫可以向上走,向下走,向右走,向左走,但是不能穿越对角线。走迷宫的取胜规则很有意思,看谁能更快地找到一条路径,其路径上单元格最大难度值与最小难度值之差是最小的。当然了,或许这样的路径不是最短路径。机器人卡多现在在迷宫的左上角(第一行,第一列),而出口在迷宫的右下角(第 N行,第 N列)
8、。卡多很聪明,很快就找到了这样的一条路径。你能找到吗?【标准输入】第一行:N 表示迷宫是 N*N方阵(2=N=100)接下来有 N行,每一行包含N个整数,用来表示每个单元格中难度(0=任意难度=120)。【标准输出】输出为一个整数,表示路径上最高难度与最低难度的差。【样例】标准输入标准输出5 11 3 6 8 12 2 5 5 44 0 3 3 80 2 3 4 4 3 0 2 1 2 提示:样例中黄色涂色路径是机器人卡多选择的路径。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 7 页 -【T5】宝物传说 HMH 大沙漠中有一个迷宫,里面藏有很多宝物。迷宫里可能有 N个藏宝地点
9、,用 1 到 N标记。藏宝地点之间最多有一条通路相连。标记 1 为迷宫的进出口。某天,Dr.kong 找到了迷宫的地图,他已经知道其中K(1=K=N)个不同的地点真的藏有宝物。Dr.kong 决定让他的机器人卡多去探险。卡多在经过某个藏宝地点时可能会拿走宝物。但它每拿走一个藏宝地点的宝物后,它的载物量就会增加 W。迷宫中的通路不是平坦的,到处都是陷阱。假设每条通路都有一个危险度,其值与通过此路的载重量成正比。当机器人卡多进入迷宫时,它的载入量为0.只有当卡多携带宝物的载重量不大于某个通路的危险度时,它才能顺利通过此条道路,否则就会掉入陷阱,不能出来。Dr.kong 希望他的机器人卡多尽量多的带
10、出宝物,当然他更希望卡多最后能从标记 1 的地点走出去。请你编写程序,帮助 Dr.kong 计算一下,卡多最多能带出多少个藏宝地点的宝物。【标准输出】第一行:N M K W 接下来有 K行,每行一个整数,表示藏有宝藏的地点标号。再接下来有 M行,每行三个整数 X,Y,Z,表示地点 X与地点 Y之间有一条危险度为 Z 的通路。【标准输出】输出有一个整数,表示卡多最多能带出的宝物的堆数。【约束条件】1=N=8000 1=K=N 1=M=15000 1=W,Z=10000 数据保证所有的地点之间都是有道路可以到达的。提示:机器人卡多经过一个藏宝地点时可以不拿走宝物,而且同一个藏宝地点可以经过多次。名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 7 页 -标准输入标准输出6 7 5 1 1 2 3 4 5 1 2 3 3 6 2 6 2 10 2 4 1 5 1 1 4 5 1 1 6 1 4 注:英文题目省略。编辑:Desen000 名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 7 页 -