大学生程序设计大赛试题.pdf
上传人:qw****27 上传时间:2024-09-12 格式:PDF 页数:28 大小:1.1MB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

大学生程序设计大赛试题.pdf

大学生程序设计大赛试题.pdf

预览

免费试读已结束,剩余 18 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

湖南省首届“湘邮科技杯”大学生程序设计大赛试题试题1n个人围成一圈,并依次编号1~n,。从编号为1的人开始,按顺时针方向每隔一人选出一个,剩下的人重新围成一圈,如此循环直到剩下两人,这剩下的两人就是幸运儿。如果你想成为最后两个幸运儿,请问开始时应该站在什么位置?(设3<=n<=50)输入:开始时的人数n输出:第1行是选出顺序,第2行是两名幸运儿的开始位置(按升序排列),位置编号之间用一个空格分开。示例输入:12应该的输出:246810123711519试题2在二维字符阵列中寻找指定的字符串。输入:前两行分别指示字符矩阵的宽w和高h(1<=w<=80且1<=h<=80)。接下来的h行每行w个字符便是字符矩阵的内容,再下面的1行为要寻找的字符串的数目n(n<10),其后的n行便是要寻找的字符串,每个字符串不会超过20个字符。输出:n行,每行保存1个字符串的位置。位置的格式形如(1,2)->(2,6),意为该字符串首字母在字符矩阵中的位置是第1列2行,尾字母在字符矩阵中的位置是第2列6行。备注:如果某个字符串在字符阵列中出现多次,则只记录任意一个出现位置即可。字符串出现的形式可能是水平、竖直、向前、向后和斜向。输出的位置顺序应该与输入中的字符串出现顺序一致。区分字符的大小写。1示例输入:输出:(1,3)->(5,7)(6,1)->(1,1)(7,7)->(7,1)试题3给出一个正方形图案和它的变换图案,称为图案变换对。编写程序,求图案变换对之间的最小变换。图案是由黑白两种小方块构成的。可能的变换包括:(1)旋转90度:图案顺时针旋转90度,记做rot90(2)旋转180度:图案顺时针旋转180度,记做rot180(3)旋转270度:图案顺时针旋转270度,记做rot270(4)竖直映像:图案以其上方的一条平行线为轴翻转,记做vr(5)联合变换:图案首先做一次竖直映像变换,然后做一次旋转变换,记做vr-rot90或vr-rot180或vr-rot270(6)保持:图案和变换后的图案完全一样,记做idt(7)错误:无法应用上述变换将初始图案变换成它的变换图案,记做imp输入:输入文件中包含多组图案变换对。每一对图案数据的起始行都是一个整数,表示正方形图案的边长a(以一个小方块为单位,1<=a<=100),后续的a行,每一行包含了原图案的一行和变换图案的对应行,两者之间用一个空格分开。黑色小方块用b表示,白色小方块用o表示。输出:输出文件的每一行对应输入文件的每一个图案变换对。其中每行开始的整数表示对应图案对在输入文件中出现的序号,紧跟一个空格,然后就是该图案对的最小变换,采用上述记号表示。备注:为了比较不同变换的大小,定义:旋转变换的代价小于映像变换,小角度旋转变换的代价小于大角度旋转变换,保持变换的代价最小。注意:对本题而言,只有上面列出的变换是合法的,如果某个图案对可以由多个变换得到,则应选择代价最小的变换。2示例输入:5booobooooboboooooobooooboobooooobobooboooooobbboob6oooobbbooooboooboobobooobboobooboobooobooooooboboooboooobooooobooboobooo2boboobob4ooboooobbboooooooooobboooooboobo5booooobooooboooooboooboooooboooooboooooboooobboooo4obooooboobobbooooooooobboobooooo2oobbbboo输出:1rot902rot2703idt4vr5imp6vr-rot2707rot1803试题4在计算机辅助设计(CAD)中,有一个经典问题:消除隐藏线(被其它图形遮住的线段)。你需要设计一个软件,帮助建筑师绘制城市的侧视轮廓图。为了方便处理,限定所有的建筑物都是矩形的,而且全部建立在同一水平面上。每个建筑物用一个三元组表示(Li,Hi,Ri)其中Li和Ri分别是建筑物i的左右边缘坐标,Hi是建筑物i的高度。下面左图中的建筑物分别用如下三元组表示:(1,11,5),(2,6,7),(3,13,9),(12,7,16),(14,3,25),(19,18,22),(23,13,29),(24,4,28)下面右图中的城市侧视轮廓线用如下的序列表示:(1,11,3,13,9,0,12,7,16,3,19,18,22,3,23,13,29,0)