第三届河南省大学生程序设计ACM竞赛试题
第三届全国软件专业人才设计与创业大赛”校内选拔赛机试比赛(最终)
河南理工大学第二届软件专业人才设计与创业大赛竞赛试题河南理工大学ACM协会主办河南理工大学教务处计算机学院协办2011.12.10比赛时间为两小半时(2011.12.10 19:30-22:00)请考生仔细阅读并严格遵守题目中关于文件(夹)保存和命名、上传及相关要求。
请务必按照试卷要求为文件及文件夹命名。
1)考生答题完毕后,首先创建在本地D盘或E盘(不得在C盘、桌面或者我的文档上创建)以“准考证号”命名的文件夹<形式如:311009060299>,并将考试结果严格按题目上的命名要求进行命名并直接保存在该文件夹下。
2)题目命名要求:请将编写好的源程序以题号命名,例如第1题的源程序(以c语言为例)保存为“rj1.C”,其它语言的扩展名以该语言格式为准。
注意:考生不得在该文件夹下创建任何子文件夹,所有考试结果均直接保存在该文件夹根目录下。
3)然后选中整个文件夹,存放在指定位置及方法见下面说明,经监考老师确认上传无误后方可离开考场。
注意:在提交答案时,请务必选中上述存放的文件夹(如前面创建的311009060299文件夹)而不是文件夹下的全部文件,在完成答案提交后,请确保上述文件夹仍保存在本地计算机。
注意:请务必按照试卷要求提交指定的文件,不得包含非题目要求的过程文件和临时文件,不得包含本试题文件和试题素材。
重要提示:1)请考生在上述文件夹内单独建立一个文件(说明.txt),以简要说明所采用的语言和特殊的编译环境配置;2)不得在计算机上插入优盘、在考试过程中不得上网查询资料、不得讨论以及相互通过局域网进行传递与考试有关的内容,但可带纸质的参考资料;3)如果考试过程中遇到不可预测(比如网络不稳定、突然断电等)原因,由主考老师根据情况来决定如何操作,甚至取消比赛。
4) 题目中黄底红字为需要输入或者输出的内容注意:凡违反上述规定的考生,其成绩一律按零分处理。
存放位置及方法说明打开“我的电脑”,在地址栏(红色标注)内输入ftp://122.206.78.19回车,自动弹出如下对话框:在用户名指定的地方输入rj2012密码为hpujsj最终将自己所建立的文件夹放到此目录下即可。
第三届河南省大学生程序设计竞赛(正式赛)
你可以选择如下一条线路:1235,并在2 号城市以3 的价格买入X 商品,在3号城市以5 的价 格卖出X 商品,赚取的旅费数为2。 你也可以选择如下一条线路14545,并在第1次到达5号城市时以1的价格买入X 商品,在第2 次到达4号城市时以6 的价格卖出X 商品,赚取的旅费数为5。 现在给出N个城市的X 商品价格,M条道路的信息(每条道路所连接的两个城市的编号以及该条道路 的通行情况)。请问你能赚取尽可能多的旅费吗。 【标准输入】 第一行:N M 分别表示城市的数目和道路的数目。
接下来有 N 行,每行有三个整数 A B C 表示房间数,开始住宿时间和天数 【标准输出】 输出一个整数,为满足所有定单要求的最少房间数。 【约束条件】 1≤N≤10000 【 样 例 】 标准输入 3 3 10 4 4 9 3 3 12 6 7 标准输出 1≤A≤10,1≤B≤180, 1≤C≤10
【试题四】
虚拟城市之旅
展馆是未来城市的缩影,个人体验和互动是不变的主题。在A国展馆通过多维模式和高科技手段,引领参观 者在展示空间踏上一段虚拟的城市之旅。 梦幻国有N个城市和M条道路,每条道路连接某两个城市。任意两个城市之间最多只有一条道路直接相连。这 M条道路中有一部分为单向通行的道路,一部分为双向通行的道路。 梦幻国幅员辽阔, 各地的资源分布情况各不相同, 这就导致了同一种商品在不同城市的价格不一定相同。 但是, 同一种商品在同一个城市的买入价和卖出价始终是相同的。 现在你已踏上一段虚拟的城市之旅。为了给你一个意外收获,允许你在旅游的同时,利用 X 商品在不同城 市中的差价赚回一点旅费,但最多只能交易一次。即,在某个城市买入X 商品,可以走到另外一个城市买掉来获得旅 费。当然,在赚不到差价的情况下,你也可以不进行贸易活动。 设梦幻国N个城市的标号从1~ N,你只能从1 号城市出发,并最终在N 号城市结束自己的旅行。在旅游的过程 中,任何城市可以重复经过多次,但不要求经过所有N个城市。 例如:梦幻国有5个大城市,城市的编号和道路连接情况如下图,单向箭头表示这条道路为单向通行,双向箭 头表示这条道路为双向通行。假设 X 商品在1~5 号城市的价格分别为 4,3,5,6,1。
计算机acm试题及答案
计算机acm试题及答案一、选择题1. 在计算机科学中,ACM代表什么?A. 人工智能与机器学习B. 计算机辅助制造C. 计算机辅助设计D. 国际计算机学会答案:D2. 下列哪个不是计算机程序设计语言?A. PythonB. JavaC. C++D. HTML答案:D3. 在计算机系统中,CPU代表什么?A. 中央处理单元B. 计算机辅助设计C. 计算机辅助制造D. 计算机辅助教学答案:A二、填空题1. 计算机的内存分为__________和__________。
答案:RAM;ROM2. 在编程中,__________是一种用于存储和操作数据的数据结构。
答案:数组3. 计算机病毒是一种__________,它能够自我复制并传播到其他计算机系统。
答案:恶意软件三、简答题1. 请简述计算机操作系统的主要功能。
答案:计算机操作系统的主要功能包括管理计算机硬件资源,提供用户界面,运行应用程序,以及控制其他系统软件和应用软件的运行。
2. 什么是云计算,它与传统的本地计算有何不同?答案:云计算是一种通过互联网提供计算资源(如服务器、存储、数据库、网络、软件等)的服务模式。
与传统的本地计算相比,云计算允许用户按需获取资源,无需购买和维护物理硬件,具有更高的灵活性和可扩展性。
四、编程题1. 编写一个程序,计算并输出从1到100(包括1和100)之间所有偶数的和。
答案:```pythonsum = 0for i in range(1, 101):if i % 2 == 0:sum += iprint(sum)```2. 给定一个字符串,编写一个函数,将字符串中的所有字符按ASCII 码值排序并返回。
答案:```pythondef sort_string(s):return ''.join(sorted(s))```五、论述题1. 论述计算机硬件和软件之间的关系及其对计算机系统性能的影响。
答案:计算机硬件是计算机系统的物质基础,包括CPU、内存、硬盘等,而软件则是运行在硬件上的程序和数据。
acm程序设计大赛试题
acm程序设计大赛试题ACM(Association for Computing Machinery)程序设计大赛是一项面向大学生的编程竞赛,旨在提高参赛者在算法和数据结构方面的能力。
每年都会举办多个级别的比赛,包括区域赛、国家赛和世界总决赛。
ACM程序设计大赛试题通常涵盖广泛的计算机科学和编程知识,包括但不限于以下几个方面:1. 算法和数据结构,试题可能涉及各种经典算法和数据结构的应用,如排序、查找、图论、动态规划、贪心算法等。
参赛者需要能够理解这些算法的原理和实现方法,并能够根据问题的要求选择合适的算法进行解题。
2. 编程语言和编程技巧,参赛者需要熟练掌握至少一种编程语言,通常是C++、Java或Python。
他们需要能够使用该语言进行编程,实现算法和数据结构的代码,并能够处理输入输出、异常处理等编程任务。
此外,熟练掌握一些编程技巧,如优化算法、调试代码等也是非常重要的。
3. 数学和逻辑思维,ACM程序设计大赛试题可能涉及一些数学和逻辑问题,如数论、组合数学、概率统计等。
参赛者需要具备基本的数学知识,并能够将其应用到解题过程中。
4. 实际问题的建模和解决,ACM程序设计大赛试题通常基于实际问题,参赛者需要能够将问题抽象为计算机可解决的形式,并设计出高效的算法和数据结构进行求解。
这需要参赛者具备一定的问题建模和解决能力。
5. 时间和空间复杂度分析,参赛者在解决问题时需要考虑算法的时间和空间复杂度。
他们需要能够分析算法的运行时间和所需内存,并根据比赛规则和问题要求选择合适的算法以保证程序的效率。
总的来说,ACM程序设计大赛试题要求参赛者具备扎实的计算机科学和编程基础,能够独立思考和解决复杂的问题。
参赛者需要在规定的时间内完成试题,并保证程序的正确性和效率。
通过参加ACM程序设计大赛,参赛者能够提升自己的编程能力和解决问题的能力,同时也能够与其他优秀的程序员交流和学习。
ACM软件大赛之编程大赛题目(附部分答案)
ACM 软件大赛之编程大赛比赛注意事项:l 比赛时间为3小时(小时(180180分钟);比赛分两个阶段:第一阶段限时30分钟,完成公示的3题,第二阶段限时150分钟(事先完成第一阶段题目的小组可提前进入第二阶段); l 比赛第一阶段的3道题目将在前期宣传中告知参赛选手,比赛第二阶段的题目将由赛事主席当场公布竞赛题目;主席当场公布竞赛题目;l 前两阶段题目分为三个分值(前两阶段题目分为三个分值(55分、分、1010分、分、1515分),第一阶段3道公示题都为5分;第二阶段总共15道题,根据不同的难度分值不同,分别为5道5分题,分题,55道10分题,分题,55道15分题;第一阶段参赛队员不可参考任何相关资料;第二阶段参赛队员可以携带诸如书,如书,手册,程序清单等参考资料。
手册,程序清单等参考资料。
手册,程序清单等参考资料。
比赛过程中队员不得携带任何电子媒质的资料;参比赛过程中队员不得携带任何电子媒质的资料;参赛者可以选择自己擅长的语言(赛者可以选择自己擅长的语言(C,C++,JAVA C,C++,JAVA 等等)进行编写等等)进行编写l 考虑到大一和大二学生的知识掌握程度,大一参加选手一开始就会有10分的分数,最后总分是由所做题目及初始的10分相加得到。
分相加得到。
l 每组队员根据安排使用电脑,小组人数为两人的使用一台电脑,超过两人的使用两台电脑,每台的电脑配置完全相同;脑,每台的电脑配置完全相同;l 各小组每做完一题或几题,必须交予评委老师运行,评委老师当场给分;各小组每做完一题或几题,必须交予评委老师运行,评委老师当场给分; l 如在比赛中发现作弊等行为,将取消比赛资格。
如在比赛中发现作弊等行为,将取消比赛资格。
第一阶段公示题目:题目一:(5分) 打印以下图形,纵遵从字母顺序,行字符数遵从斐波那契数列ABCCDDD EEEEEFFFFFFFFGGGGGGGGGGGGG#include<iostream>int f(int x){int a = 1 , b = 0;int max_ = x;int sum = 0; for(int i = 0; i < max_ ; i++){sum = a + b;a = b;b = sum;}return sum;}void loop_print(int num,char chr){for(int i = 0; i < num ;i++)std::cout<<chr;std::cout<<"\n";}int main(){int line_max = 7;char chr = 'A';for(int line = 0; line < line_max; line++){loop_print(f(line+1),chr);chr++;}return 0;}题目二:(5分)有个电子钟,12点显示为12:00(即12小时制),那么请问一天24时间内,出现连续3个相同数字的钟点有几个?#include<iostream>using namespace std;bool check(int me){int h= me/100;int m= me-100*h;return h<=12&&m<=59&&h>0?true:false;//12小时制小时制}int main(){int me=0;int j(0);//总计数器总计数器while( me<1270){//max 12:59int t= me;int n[4];for(int i=0;i<4;i++){n[i]=t%10;t /= 10;}if(n[1]==n[2]&&(n[0]==n[1]||n[3]==n[1])&&check( me)){//cout<<n[3]<<n[2]<<":"<<n[1]<<n[0]<<"\n";//testj++;me++;}cout<<"total: "<<j*2<<endl;}题目三:(5分)10进制的四位数中有几个符合如下特征:将其分别表示为16进制、10进制、12进制,在每种状态下,分别将各个位上的数相加,能得到3个相等10进制数。
中原工学院第三届ACM题
中原工学院第三届ACM大赛1. 春节将至,正是一年中铁路最繁忙的时候,大量出外打工的人们都在忙着返乡,小王就是其中的一个。
小王是河南郑州人,今年来到深圳打工的,第一次离开家乡,虽然挣了些钱,却来不及买什么东西,就想着回家看望家人以慰思乡之苦。
为了省钱,也为了避开人流,小王决定乘汽车回家。
从深圳到郑州,沿途经过很多站。
乘车方案是要么坐长途大巴,一站到家,但是可能比较贵。
要么中途在某些站下车进行中转,可能会比较省钱。
现在,小王搜集了沿途站点之间的票价,请你为小王编写一个程序,帮助他决策坐车的方案使花费最少。
设深圳到郑州间有n 个汽车站1,2,…,n,小王可以在任意站下车进行换乘。
在汽车站i到汽车站j 之间的票价为r(i,j),1≤i<j ≤n。
请编写程序,计算出从深圳汽车站(站1)到郑州汽车站(站n)所需的最少票价。
输入输入包含10组数据,每组数据的第 1 行中有 1 个正整数n (n<=200),表示从深圳到郑州途经n个汽车站。
接下来的n-1 行是r(i,j), 1≤i<j≤n。
输出程序运行结束时,输出深圳汽车站(站1)到郑州汽车站(站n)所需的最少票价。
样例输入35 157样例输出12(2). 小王今天参加驾照场地考试,考官看到小王各项测试都非常优秀,就特意为小王别出心裁设计了一个新测试项目。
这个新测试是这样的:将开阔的场地分成m×n的方格,每个方格占5×5米,如图所示,在这m×n个方格中有一些格子设置了障碍不许进入,而没有设置障碍的方格则可沿8个方向自由进入。
小王驾车初始位于场地的(p,q)方格中,他必须找出一条通向终点所在的(r,s)方格的路。
在抵达终点之前,他必须走遍所有未设置障碍的方格各一次,而且要使到达终点的转弯次数为最少。
每改变一次前进方向算作转弯一次。
请设计一个算法帮助小王找出这样一条道路,使小王通向终点的道路转弯最少。
输入输入包含多组数据。
acm程序设计大赛试题
acm程序设计大赛试题题目:旅游管理系统一、问题描述随着信息技术的飞速发展,旅游业作为全球经济的重要组成部分,其管理和服务水平也在不断提升。
为了更好地服务游客,提高工作效率,我们计划开发一个旅游管理系统。
该系统旨在帮助旅游公司管理客户信息、行程安排、预订情况以及费用结算等业务。
本文将详细介绍该系统的设计要求和功能特点。
二、功能需求1. 客户信息管理系统应能够记录客户的基本信息,包括姓名、联系方式、身份证号码等。
同时,应支持对客户信息的增加、修改和查询功能。
此外,系统还应具备客户信息的分类和统计功能,便于旅游公司对客户群体进行分析。
2. 行程安排旅游公司需要根据客户需求和旅游资源情况,为客户制定合适的旅游行程。
系统应提供行程规划功能,包括景点选择、活动安排、住宿和交通预订等。
同时,系统应能够根据实际情况调整行程,并及时更新相关信息。
3. 预订管理系统应能够处理客户的旅游预订,包括景点门票、酒店房间、交通工具等。
预订管理功能应包括预订的创建、修改、取消和确认等操作,并能够实时更新预订状态,确保信息的准确性。
4. 费用结算旅游费用的结算是旅游管理系统的核心功能之一。
系统应能够根据客户的预订情况和实际消费,自动计算应付费用。
同时,系统还应支持多种支付方式,如信用卡、支付宝、微信支付等,并能够生成详细的费用清单和发票。
5. 数据安全与备份鉴于旅游管理系统中涉及大量敏感信息,系统必须具备严格的数据安全措施。
包括但不限于用户权限管理、数据加密、防止SQL注入等。
此外,系统还应定期进行数据备份,以防数据丢失或损坏。
三、系统架构设计1. 前端设计系统的前端设计应注重用户体验,界面友好、操作简便。
可以使用HTML5、CSS3和JavaScript等技术开发响应式网页,以适应不同设备和屏幕尺寸。
同时,前端应提供丰富的交互功能,如日历选择、地图展示、图片上传等。
2. 后端设计后端设计主要负责处理业务逻辑、数据存储和安全保障。
河南科技大学ACM选拔赛试题
河南科技大学ACM-ICPC选拔赛试题承办:电子信息工程学院地点:开园校5区-511机房时间:2011年5月18日-比赛规则考试时间:3小时2:30~5:30)题目:共4题评分:以正确答题数多且完成用时少者为优胜1.中国象棋【问题描述】在中国象棋中,马是一个非常有用的棋子,它能从任意一点出发遍历整个棋盘。
请你编写一个程序,判断一个马能否从指定的起始位置经过一定的步数跳到另一个位置。
棋盘有9*10个交叉点,编号从(1、1)到(9.10),马只能能走日字型,跳的时候不能跳出棋盘。
【标准输入】有多个测试用例,输入第一行包含一个正整数K(0<K<1000),表示有K组测试数据。
每个测试用例包含一行为(SX、SY、EX、EY、N)(1<=N<=20),分别代表起始位置、结束位置和步数。
【标准输出】对于每个测试用例,输出一行,如果在N部内能走到,则输出“YES”,否则输出“NO”。
【样例输入】11 1 5 5 10【样例输出】YES2.栈【问题描述】栈是在计算机中经常用到的一种数据结构,它限制仅在表的一端进行插入和删除运算的线性表。
栈的修改是按后进先出的原则进行。
每次退栈的总是当前栈中“最新”的元素,即最后进栈的元素,而最先插入的是被放在栈的底部,要到最后才能删除。
请编写一个程序,能得到栈经过一系列的操作后的数据元素的个数。
【标准输入】有多个测试用例,输入第一行包含一个正整数K(0<K<1000),表示有K组测试数据。
每个测试用例第一行包含一个正整数M(1<=M<=10000),表示有M个对栈的操作,以下包含M个正整数N(1<=N<=3),1表示进栈操作,2表示出栈操作,3表示取栈顶元素操作。
(当前栈为空时出栈操作不做任何操作)。
【标准输出】对于每个测试用例,输出一行,即当前栈的元素个数。
【样例输入】251 2 3 1 142 2 1 1【样例输出】223.摆数字【问题描述】用火柴摆数字是大家可能玩过的一个小游戏,用火柴能摆出以下的十个数字,每个数字需要一定量的火柴,如7需要3根火柴,而8需要7根火柴,请编写一个小程序,计算使用N 根火柴所能摆出的最小数字和最大数字。
大学ACM考试题目及作业答案整理
ACM作业与答案整理1、平面分割方法:设有n条封闭曲线画在平面上,而任何两条封闭曲线恰好相交于两点,且任何三条封闭曲线不相交于同一点,问这些封闭曲线把平面分割成的区域个数。
#include <iostream.h>int f(int n){if(n==1) return 2;else return f(n-1)+2*(n-1);}void main(){int n;while(1){cin>>n;cout<<f(n)<<endl;}}2、LELE的RPG难题:有排成一行的n个方格,用红(Red)、粉(Pink)、绿(Green)三色涂每个格子,每格涂一色,要求任何相邻的方格不能同色,且首尾两格也不同色.编程全部的满足要求的涂法.#include<iostream.h>int f(int n){if(n==1) return 3;else if(n==2) return 6;else return f(n-1)+f(n-2)*2;}void main(){int n;while(1){cin>>n;cout<<f(n)<<endl;}}3、北大ACM(1942)Paths on a GridTime Limit: 1000MS Memory Limit: 30000K DescriptionImagine you are attending your math lesson at school. Once again, you are bored because your teacher tells things that you already mastered years ago (this time he's explaining that (a+b)2=a2+2ab+b2). So you decide to waste your time with drawing modern art instead.Fortunately you have a piece of squared paper and you choose a rectangle of size n*m on the paper. Let's call this rectangle together with the lines it contains a grid. Starting at the lower left corner of the grid, you move your pencil to the upper right corner, taking care that it stays on the lines and moves only to the right or up. The result is shown on the left:Really a masterpiece, isn't it? Repeating the procedure one more time, you arrive with the picture shown on the right. Now you wonder: how many different works of art can you produce?InputThe input contains several testcases. Each is specified by two unsigned 32-bit integers n and m, denoting the size of the rectangle. As you can observe, the number of lines of the corresponding grid is one more in each dimension. Input is terminated by n=m=0.OutputFor each test case output on a line the number of different art works that can be generated using the procedure described above. That is, how many paths are there on a grid where each step of the path consists of moving one unit to the right orone unit up? You may safely assume that this number fits into a 32-bit unsigned integer.Sample Input5 41 10 0Sample Output1262#include<iostream>using namespace std;long long f(long long m, long long n){if(n==0) return 1;else return f(m-1,n-1)*m/n;}int main(){long long m,n;while(scanf("%I64d %I64d",&n,&m) && n+m){printf("%I64d\n",f(m+n,min(m,n)));}return 0;}1、北大ACM(1012)JosephTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 31213 Accepted: 11700 DescriptionThe Joseph's problem is notoriously known. For those who are not familiar with the original problem: from among n people, numbered 1, 2, . . ., n, standing in circle every mth is going to be executed and only the life of the last remaining person will be saved. Joseph was smart enough to choose the position of the last remaining person, thus saving his life to give us the message about the incident. For example when n = 6 and m = 5 then the people will be executed in the order 5, 4, 6, 2, 3 and 1 will be saved.Suppose that there are k good guys and k bad guys. In the circle the first k are good guys and the last k bad guys. You have to determine such minimal m that all the bad guys will be executed before the first good guy.题目大意:编号为1,2…, n的n个人排成一圈,从第一个人开始,去掉后面的第m个人,在从第m+1个人开始去掉后面第m个人,以此类推。
acm竞赛试题及答案
acm竞赛试题及答案ACM竞赛试题及答案1. 问题描述:给定一个整数数组,找出数组中没有出现的最小的正整数。
2. 输入格式:第一行包含一个整数n,表示数组的长度。
第二行包含n个整数,表示数组的元素。
3. 输出格式:输出一个整数,表示数组中没有出现的最小的正整数。
4. 样例输入:53 4 1 2 55. 样例输出:66. 问题分析:首先,我们需要理解题目要求我们找出数组中缺失的最小正整数。
这意味着我们需要检查数组中的每个元素,并确定最小的正整数是否在数组中。
7. 算法描述:- 遍历数组,使用一个哈希集合记录出现的数字。
- 从1开始,检查每个正整数是否在哈希集合中,直到找到不在集合中的最小正整数。
8. 代码实现:```pythondef find_missing_positive(nums):seen = set()for num in nums:if num <= 0:continuewhile num in seen or num > len(nums):num += 1seen.add(num)return min(set(range(1, len(nums) + 1)) - seen)```9. 测试用例:- 输入:[3, 4, -1, 1]- 输出:210. 答案解析:在给定的测试用例中,数组[3, 4, -1, 1]中没有出现的最小正整数是2。
这是因为-1不是正整数,所以可以忽略。
数组中已经出现了1和3,所以下一个最小的正整数就是2。
11. 注意事项:- 确保数组中的元素是整数。
- 考虑数组中可能包含0或负数的情况。
- 算法的时间复杂度应尽可能低。
12. 扩展思考:- 如果数组非常大,如何优化算法?- 如果数组中的元素可以是浮点数,算法应该如何修改?13. 参考答案:- 针对大数组,可以考虑使用更高效的数据结构,如平衡二叉搜索树。
- 如果元素是浮点数,需要先将其转换为整数,然后再进行处理。
第三届ACM程序设计大赛试题new
计算机工程学院第三届ACM程序设计大赛试题Problem A BridgeDescriptionn people wish to cross a bridge at night. A group of at most two people may cross at any time, and each group must have a flashlight. Only one flashlight is available among the n people, so some sort of shuttle arrangement must be arranged in order to return the flashlight so that more people may cross.Each person has a different crossing speed; the speed of a group is determined by the speed of the slower member. Your job is to determine a strategy that gets all n people across the bridge in the minimum time.InputThe first line of input contains n, followed by n lines giving the crossing times for each of the people. There are not more than 1000 people and nobody takes more than 100 seconds to cross the bridge. OutputThe first line of output must contain the total number of seconds required for all n people to cross the bridge. The following lines give a strategy for achieving this time. Each line contains either one or two integers, indicating which person or people form the next group to cross. (Each person is indicated by the crossing time specified in the input. Although many people may have the same crossing time the ambiguity is of no consequence.) Note that the crossings alternate directions, as it is necessary to return the flashlight so that more may cross. If more than one strategy yields the minimal time, any one will do.Sample Input(Input file: pa.txt)412510Sample Output171 215 1021 2Problem B LottoDescriptionIn the German Lotto you have to select 6 numbers from the set {1,2,...,49}. A popular strategy to play Lotto - although it doesn't increase your chance of winning - is to select a subset S containing k (k > 6) of these 49 numbers, and then play several games with choosing numbers only from S. For example, for k=8 and S = {1,2,3,5,8,13,21,34} there are 28 possible games: [1,2,3,5,8,13], [1,2,3,5,8,21],[1,2,3,5,8,34], [1,2,3,5,13,21], ... [3,5,8,13,21,34].Your job is to write a program that reads in the number k and the set S and then prints all possible games choosing numbers only from S.InputThe input will contain one or more test cases. Each test case consists of one line containing several integers separated from each other by spaces. The first integer on the line will be the number k (6 < k < 13). Then k integers, specifying the set S, will follow in ascending order. Input will be terminated by a value of zero (0) for k.OutputFor each test case, print all possible games, each game on one line. The numbers of each game have to be sorted in ascending order and separated from each other by exactly one space. The games themselves have to be sorted lexicographically, that means sorted by the lowest number first, then by the second lowest and so on, as demonstrated in the sample output below. The test cases have to be separated from each other by exactly one blank line. Do not put a blank line after the last test case.Sample Input(Input file: pb.txt)7 1 2 3 4 5 6 78 1 2 3 5 8 13 21 34Sample Output1 2 3 4 5 61 2 3 4 5 71 2 3 4 6 71 2 3 5 6 71 2 4 5 6 71 3 4 5 6 72 3 4 5 6 71 2 3 5 8 131 2 3 5 8 211 2 3 5 8 341 2 3 8 13 211 2 3 8 13 341 2 3 8 21 341 2 3 13 21 341 2 5 8 13 211 2 5 8 13 341 2 5 8 21 341 2 5 13 21 341 2 8 13 21 341 3 5 8 13 211 3 5 8 13 341 3 5 8 21 341 3 5 13 21 341 3 8 13 21 341 5 8 13 21 342 3 5 8 13 212 3 5 8 13 342 3 5 8 21 342 3 5 13 21 342 3 8 13 21 342 5 8 13 21 343 5 8 13 21 34Problem C EncryptChip and Dale have devised an encryption method to hide their (written) text messages. They first agree secretly on two numbers that will be used as the number of rows (R) and columns (C) in a matrix. The sender encodes an intermediate format using the following rules:1. The text is formed with uppercase letters [A-Z] and <space>.2. Each text character will be represented by decimal values as follows:<space> = 0, A = 1, B = 2, C = 3, ..., Y = 25, Z = 26The sender enters the 5 digit binary representation of the characters' values in a spiral pattern along the matrix as shown below. The matrix is padded out with zeroes (0) to fill the matrix completely. For example, if the text to encode is: "ACM" and R=4 and C=4, the matrix would be filled in as follows:A = 00001, C = 00011, M = 01101 (one extra 0)The bits in the matrix are then concatenated together in row major order and sent to the receiver. The example above would be encoded as: 0000110100101100Inputspace, and a string of binary digits that represents the contents of the matrix (R * C binary digits). The binary digits are in row major order.OutputFor each dataset, you should generate one line of output with the following values: The dataset number as a decimal integer (start counting at one), a space, and the decoded text message. You should throw away any trailing spaces and/or partial characters found while decoding.Sample Input(Input file: pc.txt)24 4 ACM5 2 HISample Output1 00001101001011002 0110000010Problem D ConnectionThere are N cities in the country and M bidirectional roads between the cities. The government wants to build some new roads such that for any pair of cities there is at least one path between them. Now you have to find out the minimal amount of roads that have to build.InputThe input may contain multiple test cases.For each test case, the first line is two integers N (1<=N<=100) and M (1<=M<=N*N/2),indicating the number of cities and the number of roads. Then the next M lines each contain two integers x and y (0<=x,y<n), meaning that there is a road between cities x and cities y.N=M=0 indicates the end of input.OutputFor each test case, print the answer in a single li ne.Sample Input(Input file: pd.txt)5 20 12 3Sample Output2Problem E GridlandBackgroundFor years, computer scientists have been trying to find efficient solutions to different computing problems. For some of them efficient algorithms are already available, these are the "easy" problems like sorting, evaluating a polynomial or finding the shortest path in a graph. For the "hard" ones only exponential-time algorithms are known. The traveling-salesman problem belongs to this latter group. Given a set of N towns and roads between these towns, the problem is to compute the shortest path allowing a salesman to visit each of the towns once and only once and return to the starting point.ProblemThe president of Gridland has hired you to design a program that calculates the length of the shortest traveling-salesman tour for the towns in the country. In Gridland, there is one town at each of the points of a rectangular grid. Roads run from every town in the directions North, Northwest, West, Southwest, South, Southeast, East, and Northeast, provided that there is a neighbouring town in that direction. The distance between neighbouring towns in directions North�CSouth or East�CWest is 1 unit. The length of the roads is measured by the Euclidean distance. For example, Figure 7 shows 2 �� 3-Gridland, i.e., a rectangular grid of dimensions 2 by 3. In 2 �� 3-Gridland, the shortest tour has length 6.Figure 7: A traveling-salesman tour in 2 �� 3-Gridland.InputThe first line contains the number of scenarios.For each scenario, the grid dimensions m and n will be given as two integer numbers in a single line, separated by a single blank, satisfying 1 < m < 50 and 1 < n < 50.OutputThe output for each scenario begins with a line containing "Scenario #i:", where i is the number of the scenario starting at 1. In the next line, print the length of the shortest traveling-salesman tour rounded to two decimal digits. The output for every scenario ends with a blank line.Sample Input(Input file: pe.txt)2Sample OutputScenario #1:4.00Scenario #2:6.00Problem F Digital RootsBackgroundThe digital root of a positive integer is found by summing the digits of the integer. If the resulting value is a single digit then that digit is the digital root. If the resulting value contains two or more digits, those digits are summed and the process is repeated. This is continued as long as necessary to obtain a single digit.For example, consider the positive integer 24. Adding the 2 and the 4 yields a value of 6. Since 6 is a single digit, 6 is the digital root of 24. Now consider the positive integer 39. Adding the 3 and the 9 yields 12. Since 12 is not a single digit, the process must be repeated. Adding the 1 and the 2 yeilds 3, a single digit and also the digital root of 39.InputThe input file will contain a list of positive integers, one per line. The end of the input will be indicated by an integer value of zero.OutputFor each integer in the input, output its digital root on a separate line of the output.Sample input(Input file: pf.txt)2439Sample Output63Problem G Counting NumbersStarting from a positive integer n (1<=n<=2001).On the left of the integer n ,you can place another integer m to form a new integer mn , where m must be less then or equal to half of the integer n ,If there is an integer k less then or equal to half of m, you can place integer k on the left of mn ,to form a new integer kmn,…,and so on .For Examole ,you can place 12 on the left of 30 to Form an integer 1230,and you can place 6 to the left of 1230 to form an integer 61230,…,and so onFor example , start from n=8.you can place integer 1,2,3and 4 to the left of 8 to get the integers 18,28,38,48.For number 18,you can not form a new integer using the procedure described as above.For number28 and 38,you can form new integers 128 and 138.For number 48 ,you can place 1 and 2 on the left of 48 to get new integers 148 and 248.For number 248,you can place 1 on the left of it to get a new integer 1248.In total, you can have the following 10 integers(includeing the integer you start with)8182838481281381482481248Give an integer n ,find the number of integers you can get using the procedure described above.InputAn integer nOutputAn integer witch represents the number of integer you can get.Sample input: (Input file: pg.txt)8Sample Output:10Problem H Buy Low, Buy LowerThe advice to "buy low" is half the formula to success in the stock market. But to be considered a great investor you must also follow this problems' advice:"Buy low, buy lower"That is, each time you buy a stock, you must purchase more at a lower price than the previous time you bought it. The more times you buy at a lower price than before, the better! Your goal is to see how many times you can continue purchasing at ever lower prices.You will be given the daily selling prices of a stock over a period of time. You can choose to buy stock on any of the days. Each time you choose to buy, the price must be lower than the previous time you bought stock. Write a program which identifies which days you should buy stock in order to maximize the number of times you buy.By way of example, suppose on successive days stock is selling like this:Day 1 2 3 4 5 6 7 8 9 10 11 12Price 68 69 54 64 68 64 70 67 78 62 98 87In the example above, the best investor (by this problem, anyway) can buy at most four times if they purchase at a lower price each time. One four day sequence (there might be others) of acceptable buys is:Day 2 5 6 10Price 69 68 64 62PROGRAM NAME: buylowInputLine 1: N (1 <= N <= 5000), the number of days for which stock prices are available.Line 2..etc: A series of N positive space-separated integers (which may require more than one line of data) that tell the price for that day. The integers will fit into 32 bits quite nicely.Outputthe length of the longest sequence of decreasing pricesSample input: (Input file: ph.txt)1268 69 54 64 68 64 70 67 78 62 98 87Sample Output:4注意事项:1、数据从文件输入,标准输出,注意输入文件名题中已经给出。
河南省ACM竞赛样题1
所有的题目运行时间限制: 1秒【试题一】房间安排2010年上海世界博览会(Expo 2010),是第41届世界博览会。
于2010年5月1日至10月31日期间,在中国上海市举行。
本次世博会也是由中国举办的首届世界博览会。
上海世博会以“城市,让生活更美好”(Better City, Better Life)为主题,将充分探索21世纪城市生活。
这次世博会总投资达450亿人民币,创造了世界博览会史上最大规模记录。
吸引200个国家和国际组织参展。
预计有7000万人次的参观者。
为了更好地接待在这期间来自世界各地的参观者,如何合理安排各宾馆的住房问题提到了日程。
组委会已接到了大量的客房住宿定单,每张定单的内容包括要住宿的房间数,开始住宿时间和要住的天数。
为了便于整个城市各宾馆的管理,组委会希望对这些定单进行安排,目的是用尽可能少的房间来满足这些定单,以便空出更多的房间用于安排流动游客。
组委会请求DR. Kong来完成这个任务,对这些定单进行合理安排,使得满足这些定单要求的房间数最少。
假设:某个定单上的游客一旦被安排到某房间,在他预定住宿的期间内是不换房间的。
为了简化描述,定单上的开始住宿时间为距离现在的第几天。
例如,定单为(10,30,5)表示游客要求使用10个房间,第30天开始连住5天。
【标准输入】第一行:N表示定单数接下来有N行,每行有三个整数 A B C表示房间数,开始住宿时间和天数【标准输出】输出一个整数,为满足所有定单要求的最少房间数。
【约束条件】1≤N≤10000 1≤A≤10,1≤B≤180,1≤C≤10【样【试题二】素数走进世博园某信息通信馆,参观者将获得前所未有的尖端互动体验,一场充满创想和喜悦的信息通信互动体验秀将以全新形式呈现,从观众踏入展馆的第一步起,就将与手持终端密不可分,人类未来梦想的惊喜从参观者的掌上展开。
在等候区的梦想花园中,参观者便开始了他们奇妙的体验之旅,等待中的游客可利用手机等终端参与互动小游戏,与梦想剧场内的虚拟人物Kr. Kong进行猜数比赛。
acm程序设计大赛试题
acm程序设计大赛试题ACM程序设计大赛试题是计算机科学领域中的一项重要竞赛活动,旨在选拔和培养具有优秀编程能力和创新思维的学生。
这项比赛既考察参赛选手解决实际问题的能力,又对他们的编程技巧、算法设计和计算机知识有着较高的要求。
本文将介绍ACM程序设计大赛试题的特点和题目类型。
一、ACM程序设计大赛试题的特点ACM程序设计大赛试题具有以下几个特点:1. 实际问题背景:ACM程序设计大赛试题往往以实际问题为基础,模拟真实世界中的场景,让选手能够将所学知识应用到实际中去。
2. 多样性:ACM程序设计大赛试题涵盖了多个领域的问题,如图论、动态规划、贪心算法等,选手需要具备广泛的知识储备和灵活的思维方式。
3. 时间限制:ACM程序设计大赛试题通常要求选手在有限的时间内解决问题,这既考验了选手对问题的理解能力,也考察了他们的编程速度和应变能力。
二、ACM程序设计大赛试题的题目类型ACM程序设计大赛试题的题目类型多种多样,以下是其中几个常见的类型:1. 编程题:选手需要根据题目要求,设计算法并编写代码解决问题。
这类题目旨在考察选手的编程能力和算法设计思维。
2. 选择题:选手需要在给定的选项中选择正确答案,这类题目常常涉及到基础的计算机知识和数据结构。
3. 填空题:选手需要根据题目要求,在给定的空格中填入适当的代码或数值,这类题目考察选手对编程语言和计算机原理的理解程度。
4. 简答题:选手需要对给定问题进行理论分析,并进行文字解释或证明,这类题目考察选手的理解能力和表达能力。
三、ACM程序设计大赛试题的难度ACM程序设计大赛试题的难度各有不同,通常分为初级、中级和高级三个层次,以满足不同年级和专业背景的选手需求。
初级试题注重基础知识和算法简单实现,中级试题涉及到较为复杂的数据结构和算法设计,高级试题则对选手的编程能力和创新思维提出更高要求。
四、参加ACM程序设计大赛的意义参加ACM程序设计大赛对学生有着重要的意义:1. 锻炼编程能力:参加ACM程序设计大赛能够提升选手的编程技巧和实际问题解决能力。
河南acm试题及答案
河南acm试题及答案河南ACM试题及答案1. 问题描述编写一个程序,计算给定整数序列中,满足条件的子序列数量。
条件为:子序列中任意两个相邻元素的差的绝对值不超过1。
2. 输入格式第一行包含一个整数N,表示序列的长度,1 <= N <= 100000。
第二行包含N个整数,表示序列中的元素,-1000000 <= 数字 <= 1000000。
3. 输出格式输出满足条件的子序列数量。
4. 样例输入```51 2 3 2 1```5. 样例输出```5```6. 问题分析本题需要对给定的整数序列进行遍历,使用动态规划的方法来计算满足条件的子序列数量。
设dp[i]表示以第i个元素结尾的满足条件的子序列数量,那么dp[i]的值可以通过dp[i-1](当前元素与前一个元素相等或相邻)和dp[i-2](当前元素与前两个元素相邻)计算得出。
7. 算法实现```pythondef countSubsequences(nums):dp = [0] * (len(nums) + 1)dp[0] = 1for i in range(1, len(nums) + 1):for j in range(i):if abs(nums[i-1] - nums[j-1]) <= 1:dp[i] += dp[j]return sum(dp)```8. 测试用例对于样例输入,程序应输出5,表示有5个满足条件的子序列。
9. 注意事项- 确保输入数据的格式正确。
- 考虑边界条件,如序列长度为1时的情况。
- 动态规划数组的大小应根据序列长度动态调整。
河南大学计算机与信息工程学院2010C#程序设计大赛试题
C#程序设计大赛试题1. 字符串处理问题(10分)问题描述:从键盘接收一个字符串(不多于80个字符),将其中的数字字符按原顺序组成一个新字符串,将其中的英文字母都用大写按原顺序组成另一个新字符串,然后再输出这两个新字符串,每个一行。
如果原字符串中没有数字字符或没有英文字母,则输出"There are not digits."或"There are not letters." 。
当接收的字符串为”**”时程序结束。
样例输入:a@B1C3D$5ef&gh样例输出:135ABCDEFGH样例输入:abcd%eG#h样例输出:There are not digitsABCDEGH2.矩阵转换问题(15分)问题描述:行与列的个数均为n 的矩阵称为n 阶方阵。
假定矩阵中的每个元素的值在0到9之间,则可以将矩阵中的所有元素按行依次排列得到一个“单行矩阵字符串”。
例如,3*3的3阶方阵4 3 52 4 50 1 9可以描述为"435245019"。
你的任务是从键盘接收“单行矩阵字符串”并将其以矩阵样式输出,若判断行数与列的个数不一样,即非n阶方阵,则输出“Error”样例输入:435245019样例输出:4 3 52 4 50 1 9样例输入:9样例输出:9样例输入:0123456789样例输出:Error3.数字图形问题(15分)问题描述:从键盘接收一个自然数N(1≤N≤9),当输入的自然数N不属于此范围时退出程序。
对于N(1≤N≤9),在屏幕上输出如下图形,并且保证N在图形中只出现一次,且在图形的中心。
当N=1时:当N=3时:当N=4时:1111111111111122211222221123211233321122211234321111111233321122222111111114.数字排列问题(20分)问题描述:对于给定的正整数n,则1到n这n个数可以构成n!种排列,把这些排列按照从小到大的顺序(字典顺序)列出。
第三届郑州大学程序设计竞赛题目
第三届郑州⼤学程序设计竞赛题⽬第三届郑州⼤学程序设计竞赛(2009)【试题⼀】来源: ZDM001句⼦缩写Dr. Kong的四岁⼥⼉Mary刚学会认识英⽂字母。
神奇的是,虽然她还不认识⼀个单词,但你给她⼀个⼩写字母,她马上能写出对应的⼤写字母。
Dr. Kong决定考考⼥⼉Mary,于是布置了⼀个作业,给她若⼲个语句,每个语句由若⼲个单词组成,单词之间严格由⼀个空格隔开,句⼦最后以. 结束。
Mary的任务是把每个句⼦进⾏缩写,即每个句⼦是由各单词的⾸字母构成,缩写⽤⼤写字母表⽰。
你认为Mary能完成任务吗?【标准输⼊】第⼀⾏:N 表⽰有N个句⼦接下来有N⾏,每⾏有⼀个由若⼲单词构成的语句,并以. 结束。
【标准输出】输出有N⾏,每⾏是⼀个对应句⼦的缩写【约束条件】1≤N≤ 10每个单词都是由⼩写字母组成,单词长度不超过10。
句⼦的总长度不超过80。
【样例】【试题⼆】来源: BLLA +B +C 问题热⾝赛的时候,⼤家完成了A+B 问题,jsxgblcxp觉得,如果在正式⽐赛的时候还继续这样问题的话,会显得很⽆趣的。
所以,他决定要出⼀个更难的题⽬。
来增加⼀下⽐赛的趣味。
【标准输⼊】第⼀⾏:N 表⽰有N组数据接下来有N⾏,每组有4个整数:R A B C分别表⽰R进制和你需要求和的三个数字。
【标准输出】每组数据输出⼀⾏,即(A+B+C)R【约束条件】1≤N≤6A B C为正整数,每个正整数不超过50位【样例】如果你真的不知道该怎么写。
那么,请⾯对你⾯前的屏幕这样祈祷:“啊~万能的图灵啊~为什么会有这么长的数字和这么多的进制啊难道世界只有⼀个⼆进制不好么”贪婪的神⽜在上古时代,有⼀位神⽜叫Cheapwine,⼿持⼀把The depression of the Frost⼑( 就是死骑那把霜之哀伤,估计是神⽜秒杀掉DK之后⽤来削苹果的,然后看到这个把⼑挺好看的,于是就留在了⾝边 )。
有⼀天,Cheapwine在郊区ZZU西门外抓兔⼦,今天Cheapwine的rp很⾼,抓到了好多兔⼦。
河南acm程序设计竞赛
河南acm程序设计竞赛河南ACM程序设计竞赛是一项面向河南省高校学生的计算机程序设计竞赛活动,旨在培养学生的编程能力、算法设计能力以及团队合作精神。
这项竞赛不仅为学生提供了展示自己编程技能的平台,同时也为高校选拔优秀计算机人才提供了机会。
竞赛背景ACM国际大学生程序设计竞赛(ACM International Collegiate Programming Contest,简称ICPC)是全球范围内最具影响力的大学生计算机程序设计竞赛之一。
河南ACM程序设计竞赛作为ICPC的省级赛事,每年都会吸引众多高校的优秀学生参与。
竞赛形式河南ACM程序设计竞赛通常采用团队赛的形式,每支参赛队伍由三名队员组成。
比赛过程中,队伍需要在限定时间内解决一系列编程问题。
题目涵盖了数据结构、算法设计、数学建模等多个领域,考察参赛者的编程能力和逻辑思维。
竞赛流程竞赛通常分为初赛和决赛两个阶段。
初赛采用在线编程的形式,参赛队伍需要在规定时间内完成在线提交代码,系统会根据代码的正确性、效率等因素进行评分。
初赛成绩优秀的队伍将获得进入决赛的资格。
决赛则通常在线下举行,参赛队伍需要在指定的地点进行现场编程。
决赛的题目难度和复杂度通常高于初赛,更加考验参赛者的应变能力和团队协作能力。
竞赛准备为了在河南ACM程序设计竞赛中取得好成绩,参赛者需要做好充分的准备。
这包括但不限于:1. 基础知识:掌握计算机科学的基础知识,如数据结构、算法原理等。
2. 编程语言:熟练使用至少一种编程语言,如C++、Java或Python。
3. 算法训练:通过在线平台如LeetCode、Codeforces等进行算法题目的训练。
4. 团队协作:与队友进行充分的沟通和协作,形成良好的团队合作机制。
5. 模拟比赛:参加模拟比赛,熟悉比赛流程和规则,提高应对压力的能力。
竞赛意义河南ACM程序设计竞赛对于参赛学生来说具有多方面的意义:1. 技能提升:通过竞赛可以锻炼学生的编程技能和算法设计能力。
acm大赛历年程序题
acm大赛历年程序题ACM国际大学生程序设计竞赛(The ACM International Collegiate Programming Contest)是全球范围内最具声誉的大学生程序设计竞赛之一。
每年都有来自世界各地的顶尖大学参加这一比赛,他们将在规定的时间内解决一系列编程问题,以展示他们的算法和编程技巧。
历年来,ACM大赛的程序题目一直是各个大学的计算机科学学生学习和训练的重要素材。
ACM大赛历年程序题的设计旨在考察参赛者的算法设计与实现能力。
这些问题通常具有一定的难度,涵盖了多种算法和数据结构。
在ACM大赛中,选手需要在规定的时间内,根据给定的输入数据,编写程序解决问题,并输出正确的结果。
ACM大赛历年程序题通常分为多个分类,下面将列举几个常见的分类及其特点:1. 图论问题:图论是ACM大赛中常见的题目类型之一。
这类问题涉及到对图的建模和算法设计。
参赛者需要熟悉常见的图观念和算法,如图的遍历、最短路径、最小生成树等。
2. 动态规划问题:动态规划是ACM大赛中常用的解决问题的方法之一。
动态规划问题通常需要设计状态转移方程,并根据之前已经计算过的结果来推导最优解。
这类问题要求选手具备良好的逻辑思维和数学推导能力。
3. 贪心算法问题:贪心算法是一种简单而高效的算法思想。
贪心算法问题一般需要选手根据问题的特性,每次都选择当前情况下最优的解决方案。
这类问题在实际应用中非常常见,选手需要能够灵活地运用贪心策略解决问题。
4. 字符串处理问题:字符串处理问题涉及到对字符串进行各种操作,如匹配、查找、替换等。
选手需要熟练掌握字符串的各种操作和常见算法,如KMP算法、Boyer-Moore算法等。
5. 数学问题:数学问题在ACM大赛中也是常见的题目类型。
这类问题通常涉及到各种数学公式和算法,如排列组合、素数判定、快速幂等。
选手需要具备扎实的数学知识和计算能力。
ACM大赛历年程序题的学习对于计算机科学学生来说是非常重要的。
郑州大学第三届程序设计竞赛试题
E ji第三届郑州大学程序设计竞赛(2009)【试题一】来源: ZDM001句子缩写Dr. Kong的四岁女儿Mary刚学会认识英文字母。
神奇的是,虽然她还不认识一个单词,但你给她一个小写字母,她马上能写出对应的大写字母。
Dr. Kong决定考考女儿Mary,于是布置了一个作业,给她若干个语句,每个语句由若干个单词组成,单词之间严格由一个空格隔开,句子最后以. 结束。
Mary的任务是把每个句子进行缩写,即每个句子是由各单词的首字母构成,缩写用大写字母表示。
你认为Mary能完成任务吗?【标准输入】第一行:N 表示有N个句子接下来有N行,每行有一个由若干单词构成的语句,并以. 结束。
【标准输出】输出有N行,每行是一个对应句子的缩写【约束条件】1≤N≤ 10每个单词都是由小写字母组成,单词长度不超过10。
句子的总长度不超过80。
【样例】【试题二】来源: BLLA +B +C 问题热身赛的时候,大家完成了A+B 问题,jsxgblcxp觉得,如果在正式比赛的时候还继续这样问题的话,会显得很无趣的。
所以,他决定要出一个更难的题目。
来增加一下比赛的趣味。
【标准输入】第一行:N 表示有N组数据接下来有N行,每组有4个整数:R A B C分别表示R进制和你需要求和的三个数字。
【标准输出】每组数据输出一行,即(A+B+C)R【约束条件】1≤N≤62≤R≤ 10A B C为正整数,每个正整数不超过50位【样例】如果你真的不知道该怎么写。
那么,请面对你面前的屏幕这样祈祷:“啊~万能的图灵啊~为什么会有这么长的数字和这么多的进制啊难道世界只有一个二进制不好么?????”贪婪的神牛在上古时代,有一位神牛叫Cheapwine,手持一把The depression of the Frost刀( 就是死骑那把霜之哀伤,估计是神牛秒杀掉DK之后用来削苹果的,然后看到这个把刀挺好看的,于是就留在了身边 )。
有一天,Cheapwine在郊区ZZU西门外抓兔子,今天Cheapwine的rp很高,抓到了好多兔子。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3 7
3 10 4
4 9 3
3 12 6
【试题二】
素 数
走进世博园某信息通信馆,参观者将获得前所未有的尖端互动体验,一场充满创想和喜悦的信息通信互动体验秀将以全新形式呈现,从观众踏入展馆的第一步起,就将与手持终端密不可分,人类未来梦想的惊喜从参观者的掌上展开。
赚取的旅费数为5。
现在给出N个城市的X 商品价格,M条道路的信息(每条道路所连接的两个城市的编号以及该条道路的通行情况)。
请问你能赚取尽可能多的旅费吗。
【标准输入】
第一行:N M 分别表示城市的数目和道路的数目。
第二行:N个正整数,每两个整数之间用一个空格隔开,分别表示1到N个城市的商品价格。
第三届河南省大学生程序设计竞赛
主办:河南省计算机学会
承办:河南理工大学
(正式赛)
地点:河南理工大学
时间:2010年5月16日
所有的题目 时间限制: 1秒
【试题一】 房间安排
2010年上海世界博览会(Expo 2010),是第41届世界博览会。于2010年5月1日至10月31日期间,在中国上海市举行。本次世博会也是由中国举办的首届世界博览会。上海世博会以“城市,让生活更美好”(Better City, Better Life)为主题,将充分探索21世纪城市生活。
Now you could buy cool stuff with one penny. Your task is to write the software to automate this auction system.
First the auctioneer puts an upper limit on bid price for each item. Only positive price less than or equal to
接下来 M行,每行有3个正整数,X,Y,Z,每两个整数之间用一个空格隔开。
如果 Z=1,表示这条道路是城市X到城市Y之间的单向道路;
如果Z=2,表示这条道路为城市X 和城市Y之间的双向道路。
【标准输出】
输出1个整数,表示最多能赚取的旅费。如果没有进行贸易,则输出0。
【约束条件】
1≤N≤100000,1≤M≤500000,
22 5
5 19
18 7
8
【试题三】 网络的可靠性
A公司是全球领先的互联网解决方案提供商,也是 2010 年世博会的高级赞助商。它将提供先进的网络协作技术,
展馆由五部分组成,馆内影院播放名为《一眨眼的瞬间》的宽银幕短片,反映了建国以来人民生活水平和城市居住环境的惊人巨变。
可移动“沙丘”变戏法 的灵感源于其独特而雄伟的自然景观——富于传奇色彩的险峻沙丘。宏伟的结构、可循环的建材,与大自然相得益彰。
环绕一周,发现它正是从沙丘那不断变换的形态中汲取灵感的。外形逼真到无论从哪个角度去观察,都能清楚地辨识出沙丘的特征。
你也可以不进行贸易活动。
设梦幻国N个城市的标号从1~ N,你只能从1 号城市出发,并最终在N 号城市结束自己的旅行。在旅游的过程中,任何城市可以重复经过多次,
但不要求经过所有N个城市。
例如:梦幻国有5个大城市,城市的编号和道路连接情况如下图,单向箭头表示这条道路为单向通行,双向箭头表示这条道路为双向通行。
这次世博会总投资达450亿人民币,创造了世界博览会史上最大规模记录。吸引200个国家和国际组织参展。预计有7000万人次的参观者。
为了更好地接待在这期间来自世界各地的参观者,如何合理安排各宾馆的住房问题提到了日程。组委会已接到了大量的客房住宿定单,每张定单的内容包括要住宿的房间数,开始住宿时间和要住的天数。为了便于整个城市各宾馆的管理,组委会希望对这些定单进行安排,目的是用尽可能少的房间来满足这些定单,以便空出更多的房间用于安排流动游客。
A公司准备在基站之间再新铺设一些光纤线路,使得任意一个基站故障后,其它基站之间仍然可以通讯。
由于铺设线路的成本昂贵,A公司希望新增设的光纤线路越少越好。A公司请求Dr. Kong来完成这个任务。
【标准输入】
第一行: N 表示有N个基站
接下来有N-1行: X Y 表示第X个基站与第Y个基站直连
它“坡面”高达20米,微风吹来,你是否感觉到沙的流动?用手去触碰,却发现原来是“魔术戏法”。它表面的不锈钢面板呈现出
一种富于变幻的色彩,从不同角度观察,呈现不同色泽,由此来模仿流动沙丘的光感。
走进第三展厅有一个超大的屏幕,通过奇妙的特效,让观众犹如亲身来到浩瀚的沙漠。更为奇妙的是,
只见一个小动物“KK”正从沙漠区域(矩形)的左上角沿着向右或向下的方向往右下角跑去。KK太聪明了,
通过基站之间的通信线路为各区域的参观者提供视频服务。
已知在各基站之间已铺设了一些光纤通讯线路,这些线路覆盖了所有区域,即任意两ቤተ መጻሕፍቲ ባይዱ区域都可以进行视频传递。
但为了节约成本开支,目前只铺设了N-1条线路,同时为了减轻各基站的信息传递负载,每个基站最多有三条光纤通讯线路与之连接。
但在通信系统试运行期间, A公司发现当某个基站发生故障时,会导致其它区域之间无法进行信息传递。为了提高该通信网络的可靠性,
【标准输出】
输出一个整数, 表示至少需新铺设的光纤线路数。
【约束条件】
1≤ N ≤ 10000 (线路是双向通信的)
【 样 例 】
标准输入 标准输出
8 3
1 3
3 2
5 3
5 4
5 6
2 7
2 8
【试题四】
组委会请求DR. Kong来完成这个任务,对这些定单进行合理安排,使得满足这些定单要求的房间数最少。
假设:某个定单上的游客一旦被安排到某房间,在他预定住宿的期间内是不换房间的。为了简化描述,定单上的开始住宿时间为距离现在的第几天。例如,定单为(10,30,5)表示游客要求使用10个房间,第30天开始连住5天。
【标准输入】
第一行: N 表示定单数
接下来有N行,每行有三个整数 A B C 表示房间数,开始住宿时间和天数
【标准输出】
输出一个整数,为满足所有定单要求的最少房间数。
【约束条件】
1≤N≤10000 1≤A≤10,1≤B≤180, 1≤C≤10
【 样 例 】
梦幻国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价格不一定相同。但是,
同一种商品在同一个城市的买入价和卖出价始终是相同的。
现在你已踏上一段虚拟的城市之旅。为了给你一个意外收获,允许你在旅游的同时,利用 X 商品在不同城市中的差价赚回一点旅费,
但最多只能交易一次。即,在某个城市买入X 商品,可以走到另外一个城市买掉来获得旅费。当然,在赚不到差价的情况下,
它居然能在跑的过程中会选择吃掉尽可能多的虫子线路。
你知道它吃掉多少虫子吗?
【标准输入】
第一行:N M 表示沙漠是一个N*M的矩形区域
接下来有N行:每行有M个正整数,Xi1 Xi2 ……Xim 表示各位置中的虫子数(单个空格隔开)
【标准输出】
输出有一个整数, 表示“KK”吃掉最多的虫子数。
假设 X 商品在1~5 号城市的价格分别为 4,3,5,6,1。
你可以选择如下一条线路:1?2?3?5,并在2 号城市以3 的价格买入X 商品,在3号城市以5 的价格卖出X 商品,赚取的旅费数为2。
你也可以选择如下一条线路1?4?5?4?5,并在第1次到达5号城市时以1的价格买入X 商品,在第2次到达4号城市时以6 的价格卖出X 商品,
1≤X,Y≤N,1≤Z≤2,1≤商品价格≤100。
【 样 例 】
标准输入 标准输出
5 5 5
4 3 5 6 1
1 2 1
1 4 1
2 3 2
3 5 1
4 5 2
【试题五】 聪明的“KK”
非洲某国展馆的设计灵感源于富有传奇色彩的沙漠中陡然起伏的沙丘,体现出本国不断变换和绚丽多彩的自然风光与城市风貌。
【约束条件】
1≤ N M ≤ 20 0≤Xij≤ 500 (i=1,2….N, j=1,2…,M)
假设“KK”只能向右走或向下走。
【 样 例 】
标准输入 标准输出
3 4 24
3 1 2 8
5 3 4 6
1 0 2 3
【试题六】
After all bids are set, the auctioneer chooses the winner according to the following rules:
(1). If any valid price comes from only one bidder, the price is a "unique bid". If there are unique bids,
在等候区的梦想花园中,参观者便开始了他们奇妙的体验之旅,等待中的游客可利用手机等终端参与互动小游戏,与梦想剧场内的虚拟人物Kr. Kong进行猜数比赛。当屏幕出现一个整数X时,若你能比Kr. Kong更快的发出最接近它的素数答案,你将会获得一个意想不到的礼物。
例如:当屏幕出现22时,你的回答应是23;当屏幕出现8时,你的回答应是7;若X本身是素数,则回答X;若最接近X的素数有两个时,则回答大于它的素数。
AMAZING AUCTION
Recently the auction house has introduced a new type of auction, the lowest price auction. In this new system,