ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:41.43KB ,
资源ID:4473834      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4473834.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第二届河南省ACM竞赛正式赛汇编.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第二届河南省ACM竞赛正式赛汇编.docx

1、第二届河南省ACM竞赛正式赛汇编第二届河南省大学生程序设计竞赛 主办:河南省计算机学会承办:河南师范大学计算机与信息技术学院 (正式赛试题)地点:河南师范大学计算机与信息技术学院时间:2009年5月17日考试时间: 5小时(9:00 14:00)文件命名: 提交源程序名为:T题号。如第二题应提交:T2.c 时间限制: 每题运行时间不超过1000MS【试题一】Dr.Kong的机器人Dr.Kong设计了一个可以前进或后退机器人,该机器人在每个位置i会得到一个移动步数的指令Ki (i=1,2N),聪明的机器人自己会判断是要前进Ki步还是后退Ki步。例如:给定指令序列(3 3 1 2 5),表示机器人

2、在第1个位置时,可以前进3步到第4个位置,此时后退是不起作用的,出界;机器人在第2个位置时,可以前进3步到第5个位置,此时后退是不起作用的,出界;机器人在第3个位置时,可以前进1步到第4个位置,也可以后退1步到第2个位置等等。你认为,对给定的两个位置A,B, 聪明的机器人从A位置走到B位置至少要判断几次?【标准输入】第一行: M 表示以下有M组测试数据(0M=8)接下来每组有两行数据头一行:N A B ( 1 N 50, 1A,B N )下一行: K1 K2.Kn ( 0=Ki=N )【标准输出】输出有M行,第i行为第i组测试数据的最少判断次数, 若无法到达,则输出-1。【 样 例 】标准输入

3、标准输出25 1 53 3 1 2 58 5 31 2 1 5 3 1 1 13-1【试题二】奇特的艺术品Dr.Kong设计了一件艺术品,该艺术品由N个构件堆叠而成,N个构件从高到低按层编号依次为1,2,,N。艺术品展出后,引起了强烈的反映。Dr.Kong观察到,人们尤其对作品的高端部分评价甚多。狂热的Dr.Kong一激动,对组成该艺术品的N个构件重新组合,比如:把第6层到第12层的构件搬下来,想一想,然后整体放到剩下构件的第7层下面;过一会儿,又把第2层到第9层的构件搬下来,整体放到剩下构件的第1层下面等等。于是,Dr.Kong在进行了连续若干次“搬来搬去”后,还是这N个构件,又诞生了一件新

4、的艺术品。编程:请输出新的艺术品最高十层构件的编号。【标准输入】 第一行: N K 表示构件的总数和“搬来搬去”的总次数第2K+1行:A B C 表示要搬动的构件(即从第A层到第B层)整个放在第C层下面;如果C等于0,则要搬动的构件将放到最高层。【标准输出】由十行组成,分别为组成新艺术品的第一层到第十层构件的编号。【约束条件】(1) 10N20000 1k1000(2) 1ABN, 0CN-(B-A+1)【 样 例 】标准输入标准输出13 36 12 12 9 010 13 86789101112234【试题三】瓷器物流规划【问题描述】南方某瓷都有一套较完整的瓷器运输物流系统。该物流系统由若干

5、个物流基站组成,以1N 进行编号。每个物流基站i 都有且仅有一个后继基站J,而可以有多个前驱基站。基站i 中需要继续运输的瓷器都将被运往后继基站J,显然一个物流基站的后继基站不能是其本身。编号为 1 的物流基站称为控制基站,从任何物流基站都可以经过若干次周转将瓷器运往控制基站1。注意控制基站也有后继基站,以便在需要时进行物资的流通。在本瓷器物流系统规划中,高可靠性与低成本是主要设计目的。对于基站i,我们定义其“可靠性” R(i) 如下:设物流基站i 有 W 个前驱基站P 1, P 2 ,. , P W ,即这些基站以i 为后继基站,则基站i 的可靠性R(i)满足下式: R(i)=Ci + K*

6、R(P1)+ R(P1)+ R(PW)其中:Ci 和 k 都是常实数且恒为正,且 0k1。整个系统的可靠性与控制基站1的可靠性都相关,我们的目标是能否通过修改本瓷器物流系统,(即更改某些基站的后继基站),使得控制基站的可靠性R(1)尽量大。但由于经费限制,最多只能修改 M 个基站的后继基站,并且,控制基站的后继基站不可被修改。因而我们所面临的问题就是,如何修改不超过M 个基站的后继,使得控制基站的可靠性R(1)最大化。【标准输入】第一行: T 表示以下有T组测试数据(0T=8)接下来每组有三行数据头一行包含两个整数与一个实数,N, m, k。其中N 表示基站数目,m 表示最多可修改的后继基站数

7、目,k 分别为可靠性定义中的常数。下一行包含N 个整数,分别是S1, S2SN,即每一个基站的后继基站编号。第三行包含N 个正实数,分别是C1, C2CN,为可靠性定义中的常数。【标准输出】输出有T行,第i行为仅包含一个实数,为第i组测试数据可得到的最大R(1)。精确到小数点两位。【输入样例】 【输出样例】1 30.004 1 0.5 2 3 1 310.0 10.0 10.0 10.0【样例说明】 原有物流系统如左图所示,4 个物流基站的可靠性依次为22.8571,21.4286,25.7143,10。最优方案为将2 号基站的后继基站改为1 号,如右图所示。 此时4 个基站的可靠性依次为30

8、,25,15,10。【数据规模和约定】对于所有的数据,满足 1m N 60,Ci 106,0.3 k 1,请使用双精度实数,无需考虑由此带来的误差。【试题四】 壮观的瓷器广场【问题描述】最近,某瓷都为了体现“千年瓷都” 的风貌,将要建立一个壮观的瓷器广场迎接来自各国的宾客。,顾问Dr.Kong提出了一项建议:在巨大的广场南面展示N件高度不等的瓷器灯柱。夜间,这些瓷器灯柱逐一闪亮,由低至高,如此场景必将十分的绚丽夺目。然而,在瓷器灯柱运来安放后,Dr.Kong才发现粗心的工人并没有按照从低到高的顺序安放瓷器灯柱。由于瓷器灯柱已经竖立起来,不可能全部推倒重新安放,人力又搬不动。因此,Dr.Kong

9、只能借助巨型吊车每次将两个瓷器灯柱的位置小心翼翼地进行交换。例如,有3个瓷器灯柱初始时高度顺序是:3 1 2。可以先用吊车交换后两个灯柱的位置,得到3 2 1,再交换第一和第三个灯柱,得到最终序列1 2 3。 毕竟,用吊车交换灯柱位置可不是一件容易的事情,灯柱越高其重量越大,交换的难度也就越高。Dr.Kong估算出,每一次交换的难度等于交换的两个灯柱的高度的和。而整个交换方案的难度等于每次交换难度的总和。 例如先前的交换方案。原先3 1 2,交换后两个(难度为1+2=3),得到3 2 1,再交换第一和第三个(难度为3+1 = 4),得到1 2 3。因此,该方案的难度为3+4 =7。为了使交换工

10、作尽快完成,难度最低的交换方案自然是首选了。Dr.Kong虽然知道一些选择,冒泡,归并,快速甚至堆排序等。然而,在该问题面前,这些方法看起来似乎毫无用武之地!你有何办法?【标准输入】第一行: M 表示以下有M组测试数据(0M1)的准备工作只可能在工艺1.k-1中。你能否帮Dr.Kong写一个程序,计算出所有工艺都被制作完成的最短时间。当然互相没有关系的工艺可以同时工作,并且,你可以假定瓷器厂有足够多的工人来同时完成任意多项工艺的制作任务。【标准输入】 第1行: N 表示必须要完成的工艺的数目 (3=N=500);第2 N+1行:每行有一些用1个空格隔开的整数,分别表示: * 工艺序号i (1=

11、i=N,); * 完成本项工作所需要的时间Ti(1=Ti=100);* 一些必须完成的准备工作,总数不超过100个,由0结束。有些工艺的制作是不需要准备的工作的只描述一个单独的0。【标准输出】一个整数,表示完成所有工艺制作需要的最短时间。【 样 例 】标准输入标准输出71 5 02 2 1 03 3 2 04 6 1 05 1 2 4 06 8 2 4 07 4 3 5 6 023【试题六】Faulty Odometer 【Description】You are given a car odometer which displays the miles traveled as an integ

12、er. The odometer has a defect, however: it proceeds from the digit 3 to the digit 5, always skipping over the digit 4. This defect shows up in all positions (the ones, the tens, the hundreds, etc.). For example, if the odometer displays 15339 and the car travels one mile, odometer reading changes to

13、 15350 (instead of 15340).【Input】Each line of input contains a positive integer in the range 1.999999 which represents an odometer reading. (Leading zeros will not appear in the input.) The end of input is indicated by a line containing a single 0. You may assume that no odometer reading will contai

14、n the digit 4.【Output】Each line of input will produce exactly one line of output, which will contain: the odometer reading from the input, a colon, one blank space, and the actual number of miles traveled by the car. 【Sample Input】152500【Sample output】15: 13250: 198【试题七】 The Number of the Same BST【D

15、escription】Many people knows binary search tree. The keys in a binary search tree are always stored in such a way as to satisfy the BST property: Let X be a node in a binary search tree. If Y is a node in the left subtree of X , then Y X. For example, It is a binary search tree. And it can be built

16、by inserting the elements of vector A= (12, 6, 3, 18, 20, 10, 4, 17, 20) sequentially. But it can also be built by the vector B= (12, 18, 17, 6, 20, 3, 10, 4, 20). Now given a vector X, then you may get a binary search tree from X. Your job is to calculate how many different vectors can build the sa

17、me binary search tree. To make it easy, you should just output the number of different vectors mod 9901.【Input】Input consists of several cases. Each case starts with a line containing one positive integer n, which is the length of test vector. The integer n is less than 20. Following this there will

18、 be n positive integers, which are less then 1000, on the next line. The input will end with a case starting with n = 0. This case should not be processed.【Output】For each test case, print a line with a single integer, which is the number of different vectors mod 9901.【Sample Input】32 1 395 6 3 18 2

19、0 10 4 17 200【Sample output】2168【试题八】 DNA Evolution 【Description】Evolution is a seemingly random process which works in a way which resembles certain approaches we use to get approximate solutions to hard combinatorial problems. You are now to do something completely different.Given a DNA string S f

20、rom the alphabet A,C,G,T, find the minimal number of copy operations needed to create another string T. You may reverse the strings you copy, and copy both from S and the pieces of your partial T. You may put these pieces together at any time. You may only copy contiguous parts of your partial T, an

21、d all copied strings must be used in your final T. Example: From S = “ACTG” create T = “GTACTAATAAT”1. Get GT. by copying and reversing TG from S. 2. Get GTAC. by copying AC from S. 3. Get GTACTA. by copying TA from the partial T. 4. Get GTACTAAT by copying and reversing TA from the partial T. 5. Ge

22、t GTACTAATAAT by copying AAT from the partial T.【Input】The first line of input gives a single integer, 1 k 10, the number of test cases. Then follow, for each test case, a line with the string S , length of S is less then 19, and a line with the string T , length of T is less then 19.【Output】Output for each test case the number of copy operations needed to create T from S, or impossible if it cannot be done.【Sample Input】4ACGTTGCAACACGTTCGATCGAAAAAAAAAAAAAAAAAAAA【Sample output】1impossible46

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1