免费注册 查看新帖 |

Chinaunix

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

迎接ChinaUnix九周年庆技术实践之二----C/C++编程大赛!-结果公布! [复制链接]

论坛徽章:
49
15-16赛季CBA联赛之福建
日期:2016-06-22 16:22:002015年亚洲杯之中国
日期:2015-01-23 16:25:12丑牛
日期:2015-01-20 09:39:23未羊
日期:2015-01-14 23:55:57巳蛇
日期:2015-01-06 18:21:36双鱼座
日期:2015-01-02 22:04:33午马
日期:2014-11-25 09:58:35辰龙
日期:2014-11-18 10:40:07寅虎
日期:2014-11-13 22:47:15申猴
日期:2014-10-22 15:29:50摩羯座
日期:2014-08-27 10:49:43辰龙
日期:2014-08-21 10:47:58
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-11-22 14:18 |只看该作者 |倒序浏览
获奖名单已公布,详情请看:http://bbs.chinaunix.net/thread-1862821-1-1.html

大赛结果及获奖名单公布!

http://bbs.chinaunix.net/thread-1860588-1-1.html

PHP编程大赛的评选结果出来了,请参看。

大赛评选结果已出,敬请关注!:PHP编程大赛隆重启动,PHP开发大挑战
http://bbs3.chinaunix.net/thread-1788191-1-1.html

---------------------------------------------------------
为了庆祝ChinaUnix社区创立9周年,ChinaUnix社区各技术版面将隆重发起各项技术实践活动!

感谢各位为本次活动提供试题和建议的版主和会员:)


大赛背景:

C/C++、Perl、Shell、PHP等ChinaUnix传统程序设计板块一直是CU的技术讨论区的中坚力量。为了庆祝ChinaUnix社区成立九周年,特联合部分出版社举办本次大赛,诚邀各路Coder好手!

第一期PHP程序设计大赛已经完成,相关内容和获奖名单见以下链接:http://bbs.chinaunix.net/thread-1788191-1-1.html

这是第二期,C/C++程序设计大赛,欢迎大家积极参与!

大赛日程:

参赛时间:2010.11.20~2011.01.10

评选时间:2011.01.11~2011.01.18

结果公布:2011.01.19

参赛要求:

参与活动必须为chinaunix论坛注册会员,点击这里注册:http://sso.chinaunix.net/Register

奖项设置及评选办法:

一等奖:3名,赠送ChinaUnix高质量电脑包,获奖者为最先正确完成4道试题的用户,或者某些设计思想获得评委一致赞同的用户。

二等奖:10名,赠送ChinaUnix 9周年限量版ChinaUni秋季长袖T恤,获奖者为最先正确完成两道试题的十名用户。

三等奖:15名,赠送ChinaUnix 9周年 限量版精美纪念真空保温杯,获奖者至少独立完成一道试题,获奖名单由评委按照代码质量和完成试题数目决定。







代码提交:
(1)参赛作品须在规定的初赛代码提交截止日期之前将规定的内容及材料以邮件形式发送到大赛邮箱rmzhou@staff.chinaunix.net。如果代码有变动可以多次发送邮件,以最后邮件提交时间为准。
邮件标题格式为:ChinaUnix论坛C/C++程序设计大赛参赛代码(论坛ID),内容按照各题的需要提交。
(2)你也可以将代码张贴到本活动贴中和大家讨论,但是不作为本次比赛的参赛证据。

注:
参赛选手提交代码必须通过邮件提交,代码版权归CU所有(最后所有的参赛者代码将公布在CU论坛供大家学习和参考)
严禁抄袭,一经发现,取消评选资格;
代码类似,以最后提交时间为准,取最早发布或者修改时间者为优秀



活动细则:

因为本次大赛的题目可能要求不一,每题的要求请看清!

(1)代码规范:使用标准C语言,采用编程标准可以使项目更加顺利地完成。
(2)性能:应用程序运行正常,可以执行用户或客户所需的所有任务,并不意味着程序在任何方面都是完美的,更高的运行性能才能我们所追求的。
(3)简洁:写代码是一种艺术。除了正确的缩进、大小写、命名规则之外,请时刻牢记爱因斯坦的名言--简单就是美。
(4)每位会员可以发表多个代码,以最高评价为准,不可重复获奖;
(5)提交代码参赛的同时,需附相关系统环境及编译环境说明(推荐Linux kernel 2.6.30及以上版本,gcc 4.32及以上)

大赛评委:

cugb_cat:ChinaUnix论坛C/C++版版主,工作主要涉及分布式系统、数据库系统等研发和运营工作。

duanjigang:目前就职于北京一家网络安全公司,5年linux下C/C++开发经验,工作主要涉及网络通讯,终端安全方面。业余做一些开源和LAMP架构方面的开发。

dreamice:资深网络安全产品架构师,在内核开发和网络安全方面有雄厚技术功底,另外也涉猎嵌入式产品开发等方面,目前就职于国内一家知名网络安全公司,任产品经理及开发经理。

Godbach:ChinaUnix 论坛内核源码版版主,从事内核及网络安全的相关开发工作。欢迎大家来内核源码版交流内核相关的各种技术问题。

大赛试题:

试题一:
开发一个域名批量查询程序,文本文件data.txt中存储着N个域名,每行一个,
要求程序从该文件中读取域名数据,然后获取该域名对应的IP地址列表.比如
文件内容为:
www.126.com
www.132321321.com
www.baidu.com
输出格式为:
域名
IP个数
IP1
IP2
...
例如,上面的例子文件中的输出结果为:

www.126.com
1
121.20.3.105
www.132321321.com
0
www.baidu.com
3
212.32.4.211
10.52.32.32
102.31.0.91


评判标准:
我们将会采用N组文件进行测试
优秀的评判标准为:1处理时占用时间短 2运行时占用最大内存小


试题二:
开发一个报文处理程序,捕获指定网口接收的数据包,统计每个会话(五元组,sip,dip,sport,dport,protocol)的流量:字节数,报文数。测试目标,以处理性能和统计精确度为准。


试题三:
对输入进行从小到大排序,然后输出,输入第一行为case数量,第二行起每行是由空格隔开的一组数字,第一个数字是本case中需要排序的数字的数量,后面是要被排序的数字。
输入例子:
2
5 2 9 3 48 1
9 1 0 8 4 5 19 48 2232 112
输出:
1 2 3 9 48
0 1 4 5 8 19 48 112 2232

提示:注意可利用多核特性


试题四:
实现关系表的增删改查功能:
功能需求:关系表,即数据库中数据的表示方式,使用二维行列表示,请实现创建表(create)、删除表(drop)、插入行(insert)、删除行(delete)、修改某些行中的某些字段(update)、查询(select);
限制:表的最大列数不超过255列,最大行数的数量级为百万级,列类型均为int型,表中索引最大数量为16个,
输入:从标准输入输入,第一行为命令字,包括create/drop/insert/delete/update/select六种,当命令字是create时,第二行表示表中包含的列数,这些列由0 -- n-1标识,第三行是一组由空格隔开的数字,表示以这些数字标识的列上有索引,数字的数量不会超过16个或者表的列数;当命令字是drop时,表示将表删除;当命令字是insert时,第二行是一个数字,表示从下一行起要插入到表中的行数,第三行起,每行是一组由空格隔开的数字,数字的数量为表的列数;命令字是delete时,第二行是一个数字,表示后续需要delete的case的数量,每个case一行,第三行起,每行为一些由删除条件组成的case,格式为:no或者列序号1 > num1 and ( 列序号2 < num2 or 列序号3 >= num3 ) and 列序号4 <= num4 and 列序号5 = num5 and 列序号6 != num6,no表示没有条件,即,匹配所有行,条件的组合包含and和or运算,比较运算符包括> < >= <= = !=,由()括起的部分优先级高于未被括起的部分,()不会嵌套,字元之间均有空格隔开;当命令字为update时,第二行为case数量,每个case包括两行,第一行表示要修改的列以及要修改成的值,第二行为过滤条件(与delete的条件格式相同),每个case的第一行的格式为:列序号1 = num1 , 列序号2 = 列序号2 + num2 , 列序号3 = 列序号4 + num3,进行运算只有+和-,逗号分割各个要修改的列;命令字为select时,第二行是后续case数量,第三行起,每行的格式与delete命令字的条件格式相同。
输出:输出到标准输出,只有select命令字有输出,每个select的输入case的输出格式为,第一行为该case后续输出的行数,第二行起,每行是一组由空格隔开的数字,数字的数量与表的列数量相同,输出的各行是按照从第一个字段到最后一个字段升序排列的;

输入例子:
create
5
1 3 4
insert
3
1 2 3 4 5
10 11 12 13 14
100 101 102 103 104
update
1
0 = 4 , 2 = 2 + 100 , 3 = 4 + 1000
1 > 10 and 1 < 100 and ( 2 > 5 or 2 < 1 )
select
2
no
no
delete
1
no
drop
上述输入的输出:
3
1 2 3 4 5
4 11 112 1014 14
100 101 102 103 104
3
1 2 3 4 5
4 11 112 1014 14
100 101 102 103 104

提示:进行update操作时请注意Halloween Problem

提示:本题的运行及编译环境:

Linux,2.6.30内核,4核CPU,CPU主频2.0G,8G内存,x86_64,gcc4.1,pthread,请注明编译参数

在输出正确的情况下,考察指标:1、速度快;2、占用内存少;3、valgrind给出的结果显示无错误和内存泄漏

论坛徽章:
0
2 [报告]
发表于 2010-11-22 16:15 |只看该作者
评委不是我

论坛徽章:
0
3 [报告]
发表于 2010-11-22 20:31 |只看该作者
楼上,你写一个呀

论坛徽章:
1
CU十二周年纪念徽章
日期:2013-10-24 15:41:34
4 [报告]
发表于 2010-11-22 22:06 |只看该作者
栈桌

论坛徽章:
16
IT运维版块每日发帖之星
日期:2015-08-24 06:20:00综合交流区版块每日发帖之星
日期:2015-10-14 06:20:00IT运维版块每日发帖之星
日期:2015-10-25 06:20:00IT运维版块每日发帖之星
日期:2015-11-06 06:20:00IT运维版块每日发帖之星
日期:2015-12-10 06:20:00平安夜徽章
日期:2015-12-26 00:06:302016猴年福章徽章
日期:2016-02-18 15:30:34IT运维版块每日发帖之星
日期:2016-04-15 06:20:00IT运维版块每日发帖之星
日期:2016-05-21 06:20:00综合交流区版块每日发帖之星
日期:2016-08-16 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-14 06:20:00
5 [报告]
发表于 2010-11-23 09:29 |只看该作者
顶起,mark之,坐观高手论道

论坛徽章:
5
未羊
日期:2014-08-07 15:42:10双子座
日期:2014-09-23 15:42:172015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:55:282022北京冬奥会纪念版徽章
日期:2015-08-10 16:30:32
6 [报告]
发表于 2010-11-23 09:50 |只看该作者
顶起。

论坛徽章:
0
7 [报告]
发表于 2010-11-23 10:57 |只看该作者
支持,学习学习。

论坛徽章:
0
8 [报告]
发表于 2010-11-23 10:58 |只看该作者
支持

论坛徽章:
0
9 [报告]
发表于 2010-11-23 11:15 |只看该作者
这个比php那个要废点脑子,

第一期PHP程序设计大赛已经完成,相关内容和获奖名单见以下链接:http://bbs.chinaunix.net/thread-1788191-1-1.html


这个结果还没出来好不好

论坛徽章:
49
15-16赛季CBA联赛之福建
日期:2016-06-22 16:22:002015年亚洲杯之中国
日期:2015-01-23 16:25:12丑牛
日期:2015-01-20 09:39:23未羊
日期:2015-01-14 23:55:57巳蛇
日期:2015-01-06 18:21:36双鱼座
日期:2015-01-02 22:04:33午马
日期:2014-11-25 09:58:35辰龙
日期:2014-11-18 10:40:07寅虎
日期:2014-11-13 22:47:15申猴
日期:2014-10-22 15:29:50摩羯座
日期:2014-08-27 10:49:43辰龙
日期:2014-08-21 10:47:58
10 [报告]
发表于 2010-11-23 11:23 |只看该作者
支持,学习学习。
scutan 发表于 2010-11-23 10:57



   
顶起,mark之,坐观高手论道
expert1 发表于 2010-11-23 09:29



作为现任版主和将来的实习版主,二位应当以实际行动支持一下!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP