免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4990 | 回复: 6
打印 上一主题 下一主题

<ChinaUnix第一届“C语言代码”开发大赛> 用Perl试试看 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-02-06 12:50 |只看该作者 |倒序浏览
刚看到ChinaUnix置顶贴《挑战自我 ChinaUnix第一届“C语言代码”开发大赛! 》
http://bbs.chinaunix.net/thread-1362866-1-1.html
题目蛮由意思的,大家闲的话可以尝试用Perl做做。。。



1.给定一个整数N,生成一个N*N的矩阵,矩阵中元素取值为1至N2,1在左上角,其余各数按顺时针方向旋转前进,依次递增放置。例如,当N=4时,矩阵中的内容如下:
1    2    3    4
12    13    14    5
11    16    15    6
10    9    8    7


2.给定n(3 &pound; n &pound; 50000)个闭区间[ai, bi](1 &pound; i &pound; n, ai,bi均为非负整数),将这些区间合并为不相交的闭区间。输入文件的第一行包含一个整数n,为区间的数目。以下有n行,每行各包括两个空格分隔的整数ai 和 bi,表示一个区间[ai, bi](0 &pound; ai &pound; bi &pound; 1000000)。计算结果写在标准输出上,各区间按照升序排列输出。每一行包含两个用空格分开的整数,分别描述一个区间的上下界。例如,对于下列输入数据:
5
5 6
1 4
10 10
6 9
8 10
输出为:
1 4
5 10


3.从标准输入中读入N(1<N<10000)行以换行符结束且长度不超过2048的字符串,并在输入结束后输出其中最长10行的输入序号、长度和内容。当有多行长度相等的最长行时,输出最先输入的行的信息。参考【例2-7】的讨论,分别使用不同的方法实现这一程序,比较各种方法的运行效率。


4.写出程序求解Hanoi双塔问题。从标准输入上读入正整数n(n < 12),在标准输出上输出盘子的移动动作。盘子的尺寸由1到n,输出数据格式为:
move <盘子编号> from <原位置> to <新位置>
其中<盘子编号>为<d>a或<d>b,其中<d>是一个小于等于n的正整数,在初始状态下尺寸相同的盘子中a盘在b盘之上,<原位置>和<新位置>均为字母ABC中的一个。例如,移动序列的第一个动作可能是move 1a from A to C。


5.从标准输入上读入一个由数字和四则运算符组成的后缀表达式,将其转换为中缀表达式。后缀表达式中的运算符不超过15个,数字可以是整数,也可以是带有小数部分的浮点数,数字和运算符之间由空格分隔。转换后的中缀表达式中不应出现不必要的括号和空格,且转换前后各运算数的出现顺序不变。例如,对于后缀表达式:
4  7  -  2.1  5  +  *  7.1  9  -  /
输出
(4-7)*(2.1+5)/(7.1-9)


6.有大、中、小三个酒桶,分别能装A斤、B斤和C斤酒,其中A、B、C均为整数,A=B+C,B>C>0,且A为偶数。现在大桶装满了酒,另外两个桶都空着。写程序求解用这三个桶将酒平分成为两份的操作序列。当无解时输出字符串“No”。


7. 读入一个不超过20000000个字符的正文文件,统计其中所有由字母组成的单词及其所在的行号。文件中各个单词之间以空白符或标点分隔,区分大小写。按单词的字典序在标准输出上输出统计结果,输出格式为<word>: <h1> <h2> … <hn>,每个单词一行,其中<word>是单词,<hn>是行号。行号之间由空格分隔,按升序排列,不得重复,即当一个单词在一行出现多次时,只输出该行号一次。


8. 写一个程序,列出环境变量PATH中包含的所有目录的路径名。注意,Unix/Linux上PATH中各个路径名之间的分隔符与Windows上的不同。使用条件编译,使你的程序可以适用于这两种系统。

论坛徽章:
3
戌狗
日期:2014-09-10 17:07:162015年辞旧岁徽章
日期:2015-03-03 16:54:15wusuopu
日期:2016-06-17 17:43:45
2 [报告]
发表于 2009-02-06 12:54 |只看该作者
支持一下。

论坛徽章:
0
3 [报告]
发表于 2009-02-06 13:14 |只看该作者
呵呵,等着

论坛徽章:
0
4 [报告]
发表于 2009-02-06 13:20 |只看该作者
这么多题啊,用Perl实现应该会比C语言容易些。

论坛徽章:
0
5 [报告]
发表于 2009-02-06 13:40 |只看该作者
这个有意思,更有挑战!
俺是新手,有空搞个简单的题目做做

论坛徽章:
0
6 [报告]
发表于 2009-02-06 16:25 |只看该作者
我准备 用perl 写好了   导成c语言 提交   

累死那些 评审

论坛徽章:
3
戌狗
日期:2014-09-10 17:07:162015年辞旧岁徽章
日期:2015-03-03 16:54:15wusuopu
日期:2016-06-17 17:43:45
7 [报告]
发表于 2009-02-06 16:36 |只看该作者
原帖由 hitsubunnu 于 2009-2-6 16:25 发表
我准备 用perl 写好了   导成c语言 提交   

累死那些 评审

好主意。我支持你
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP