程序设计大赛试题及答案

上传人:公**** 文档编号:508410158 上传时间:2023-04-03 格式:DOCX 页数:7 大小:29.98KB
返回 下载 相关 举报
程序设计大赛试题及答案_第1页
第1页 / 共7页
程序设计大赛试题及答案_第2页
第2页 / 共7页
程序设计大赛试题及答案_第3页
第3页 / 共7页
程序设计大赛试题及答案_第4页
第4页 / 共7页
程序设计大赛试题及答案_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《程序设计大赛试题及答案》由会员分享,可在线阅读,更多相关《程序设计大赛试题及答案(7页珍藏版)》请在金锄头文库上搜索。

1、试题1 、数学黑洞(程序文件名)【问题描述】任给一个 4位正整数, 其各位数位上的数字不全相同, 将数字重新组合成一个最大的数与最小的数相减, 重复这个过程,最多 7步,必得6174。对任给的4位正整数(各位数位上的数字不全相同),编程输出掉进黑洞的步数。【输入】一行,一个4位正整数n( 1000 n9999 )【输出】掉进黑洞的步数输入1234输出32、进制转换(程序文件名)【问题描述】任给一个十进制整数n,及正整数m(m=1近m?510),将n转换成世制并输出。【输入】一行,两个整数n, m (0 n 500000 , 2 m 16,且nr510),中间用一个空格隔开,其中 n表示十进制数

2、。【输出】转换后的数【输入输出样例】输入255 8输出3773、分数线划定(程序文件名)【问题描述】公务员选拔工作正在 A 市如火如荼的进行。 为了选拔优秀人才, A 市对所有报名的选手进行了笔试, 笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的150喊ij定,即如果计划录取m公务员,则面试分数线为排名第m*150%(向下取整)名的选手的分数,而最终进入面试的选手为笔试成绩不低于面试分数线的所有选手。现在就请你编写程序划定面试分数线,并输出所有进入面试的选试的报名号和笔试成绩。【输入】第一行,两个整数n, m(5 n 5000, 3 m n ),中间用一个空格隔开,其中

3、 n表示报名参加笔试的选手总数,m表示计划录取的人数。输入数据保证m*150狗下取整后小于等于n。第二行到第n+1行,每行包括两个整数,中间用一个空格隔开,分别是选手的报名号k ( 1000 k 9999 )和该选手的笔t成绩s (1 s 100)。数据保证选手的报名号各不相同。【输出】 第一行,有两个整数,用一个空格隔开,第一个整数表示面试分数线;第二个整数为进入面试的选试的实际人数。 从第二行开始,每行包含两个整数,中间用一个空格隔开,分别表示进入面试的选试的报名号和笔试成绩,按照笔试 成绩从高到低输出,如果成绩相同,则按报名号由小到大的顺序输出。 【输入输出样例】 输入1000 9032

4、39 882390 957231 841005 95 1001 88 输出88 51005 952390 951000 901001 883239 88 【样例说明】m*150%= 3*150% = ,向下取整后为4。保证4 个人进入面试的分数线为88,但因为88有重分,所以所有成绩大于等于88 的选手都可以进入面试,故最终有5 个人进入面试。4、生日礼物()【问题描述】小新今天过生日,他妈妈带他到一家购物中心,他妈妈告诉他他今天可以在这家商店选购3件礼物,但这3件礼物必须满足条件: 后面礼物的价格不得高于前面礼物的价格, 如有 5件商品价格分别是12,11,8,9,10 , 则小新挑选礼物方

5、案只能是( 12,11,8 )、(12,11,9 )、(12,11,10 )这三种方案中的一种,小新对挑选礼物的方案很感兴趣,请编程计算挑选礼物的方案数。【输入】第一行,一个整数n(n01000),表示待选商品的总数。第二行n个整数,用空格隔开,分别表示每件商品的价格(每件商品的彳格0 10000) o【输出】共一行,包含 1 个整数,表示挑选礼物的方案数。【输入输出样例】输入512 11 8 9 10输出35、资金预算【问题描述】小新的亲戚开了一家建材批发部,近来由于价格不稳定,故需要制定按月执行的仓储计划,该批发部有n个供货月份,每个月仓储预算、商品价格预算、客户需求量分别为 Pi,Si,

6、Di, ,每月客户需求必须得到保证。当然,也可以在价格适当时进行囤货,即用仓库所储备的商品供货。若存货不足,就要购买商品供货,如某月要购货,则该月要加上一笔购货预算资金 Ri 。 例如,有2个预算月份,P1,S1,D1,R1 分别为 0,10,100,10 ; P2,S2,D2,R2 分别为 0,100,100,10 ; 则方案 1:第一个月买够D1的货,第二个月买够D2的货,预算等于(D1 XS1+R1)+(D2XS2+R2)=(100X 10+10)+(100 X 100+10)=11020。方案 2 :第一个月买够2个月的商品,第二个月不用买货,可用囤积的商品供货,但需要支付第一个月的仓

7、储费,预算等于(D1+D2) X S1+R1)+(P1 X D2) = (100+100) X 10)+(0 X 100) =2010。显然方案 2优于方案 1。人工进行这样的预算费时费力,请你编程帮小小亲戚安排预算从而实现利润的最大化。【输入】输入文件第一行是整数n (K n 20),表示有n个月份;接着有n行,每行4个数据,分别表示Pi,Si,Di,Ri, 即仓储费用,商品价格预算,客户需求量及购货预算。其中10i n,0Pi,Si,Ri 100000; , EDi500o【输出】仅 1行,数据是最小总预算。样例 1 :【输入 1】20 10 100 100 100 100 10【输出 1

8、】2010样例 2 :【输入2】2100 10 100 100 100 100 10【输出2】110206、热带鱼()【问题描述】一个晴朗的星期天,小小在商场看见美丽的热带鱼,五彩斑斓的热带鱼在碧绿的水草映照下格外绚丽夺目,大大小小的鱼儿有的慢悠悠的散着步,有的疾驰如闪电,小小不禁被美丽的鱼儿所吸引,他非常想将这些美丽的小精灵们全买回家, 但鱼儿的种类太多了, 所以小小决定每种鱼最多只买1条,由于鱼儿间会相互争斗蚕食,故有些鱼儿是不能同时买回家的,小小想买尽可能多的鱼,但他身上的钱有限,只能在资金许可的范围内买鱼,怎么办?请你设计一个最佳方案,在资金许可的范围选择花费资金最多的一种买鱼方案。程

9、序运行时间10s内。【输入】文件的第一行为两个正整数m (me 1000)与n (n030),分别表示资金与鱼的种类;以下 行,每行2个正整数,分别表示某种鱼的编号(编号0 30)及价格(价格0 10000);接着,每行2个正整数p与q ,表示编号p与编号q的鱼不能共处, 当p、q均等于0时,表示输入文件结束。【输出】输出文件为2行,分别为2个正整数,第一行整数表示所买鱼的条数,第二行整数表示所花费的资金。样例 1 :【输入 1】15 31 302 393 181 30 0【输出 1】00样例 2 :【输入2】180 66 805 604 403 302 501 201 43 55 60 0【

10、输出2】41807、电脑游戏【问题描述】小新正在玩一个简单的电脑游戏。游戏中有一条环形马路,马路上有n 个机器人工厂,两个相邻机器人工厂之间由一小段马路连接。小新以某个机器人工厂为起点, 按顺时针顺序依次将这 n 个机器人工厂编号为 1n, 因为马路是环形的, 所以第 n 个机器人工厂和第1 个机器人工厂是由一段马路连接在一起的。小新将连接机器人工厂的这n段马路也编号为1n,并规定第i段马路连接第i个机器人工厂和第i+1个机器人工厂(1 i n-1 ),第n段马路连接第n个机器人工厂和第1个机器人工厂。游戏过程中,每个单位时间内,每段马路上都会出现一些金币,金币的数量会随着时间发生变化,即不同

11、单位时间内同一段马路上出现的金币数量可能是不同的。小新需要机器人的帮助才能收集到马路上的金币。所需的机器人必须在机器人工厂用一些金币来购买,机器人一旦被购买,便会沿着环形马路按顺时针方向一直行走,在每个单位时间内行走一次,即从当前所在的机器人工厂到达相邻的下一个机器人工厂, 并将经过的马路上的所有金币收集给小新, 例如,小新在i (1 i n)号机器人工厂购买了一个机器人,这个机器人会从i号机器人工厂开始,顺时针在马路上行走,第一次行走会经过 i 号马路,到达i+1 号机器人工厂(如果i=n ,机器人会到达第1 个机器人工厂),并将i 号马路上的所有金币收集给小新。游戏中,环形马路上不能同时存

12、在 2 个或者 2 个以上的机器人,并且每个机器人最多能够在环形马路上行走p 次。小新购买机器人的同时,需要给这个机器人设定行走次数,行走次数可以为 1p 之间的任意整数。当马路上的机器人行走完规定的次数之后会自动消失,小新必须立刻在任意一个机器人工厂中购买一个新的机器人,并给新的机器人设定新的行走次数。以下是游戏的一些补充说明:1. 游戏从小新第一次购买机器人开始计时。2. 购买机器人和设定机器人的行走次数是瞬间完成的,不需要花费时间。3. 购买机器人和机器人行走是两个独立的过程, 机器人行走时不能购买机器人, 购买完机器人并且设定机器人行走次 数之后机器人才能行走。4. 在同一个机器人工厂

13、购买机器人的花费是相同的,但是在不同机器人工厂购买机器人的花费不一定相同。5. 购买机器人花费的金币,在游戏结束时再从小新收集的金币中扣除,所以在游戏过程中小新不用担心因金币不足,无法购买机器人而导致游戏无法进行。也因为如此,游戏结束后,收集的金币数量可能为负。现在已知每段马路上每个单位时间内出现的金币数量和在每个机器人工厂购买机器人需要的花费,请你告诉小新,经过 m 个单位时间后,扣除购买机器人的花费,小新最多能收集到多少金币。【输入】第一行3个正整数,n, m, p,意义如题目所述。接下来的 n 行, 每行有 m 个正整数, 每两个整数之间用一个空格隔开, 其中第 i 行描述了 i 号马路

14、上每个单位时间内出现的金币数量(1 金币数量0 100),即第i行的第j (1 j m)个数表示第j个单位时间内i号马路上出 现的金币数量。最后一行, 有 n 个整数, 每两个整数之间用一个空格隔开, 其中第 i 个数表示在i 号机器人工厂购买机器人需要花费的金币数量(1 金币数量0 100 )。【输出】共一行,包含 1 个整数,表示在 m 个单位时间内,扣除购买机器人花费的金币之后,小新最多能收集到多少金币。【输入样例】2 3 21 2 32 3 41 2【输出样例】5【数据范围】对于40%的数据,20n 40 , 140。对于 90%的数据,20n 200 , 1 me 200。对于 10

15、0% 的数据,20n 1000 , 1 m 1000 , 1 p 7、电脑游戏【问题描述】小新正在玩一个简单的电脑游戏。游戏中有一条环形马路,马路上有n 个机器人工厂,两个相邻机器人工厂之间由一小段马路连接。小新以某个机器人工厂为起点, 按顺时针顺序依次将这 n 个机器人工厂编号为 1n, 因为马路是环形的, 所以第 n 个机器人工厂和第1 个机器人工厂是由一段马路连接在一起的。小新将连接机器人工厂的这n段马路也编号为1n,并规定第i段马路连接第i个机器人工厂和第i+1个机器人工厂(1 i n-1 ),第n段马路连接第n个机器人工厂和第1个机器人工厂。游戏过程中,每个单位时间内,每段马路上都会出现一些金币,金币的数量会随着时间发生变化,即不同单位时间内同一段马路上出现的金币数量

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号