注册 登录
编程论坛 意见和建议

大家都进来---建OJ

sunnvya 发布于 2006-09-10 16:18, 6902 次点击

这个论坛对学编程的人来说很不错,
大家可以在这里好好的交流,
但锻炼吗在这里还是缺乏的,
建议静夜思在这里建设个OJ
英文版的。
大家一起做题,
每周在OJ都有比赛
相信以后大鸟小鸟都会来这做做题目玩的
看谁做的多

55 回复
#2
燃燒2006-09-10 16:24
严重支持

严重同意!
#3
静夜思2006-09-10 16:31
如果让评论结果公平,必须有局外人做评委,论坛上的人一边参赛一边做评委评论出的结果会不公平。
如果要让这些评委每周按时上工,这些评委必须得是专职的,还有,评委的水平要很高,待遇低了请不动他们。
就算这些条件都具备了,出题做题的方式又陷入了应试教育的怪圈。
#4
sunnvya2006-09-10 16:37
先不说出比赛
那等成熟后再来
就先做OJ
弄个题库
这样引来好多人做题
到时候国内就有个统一的OJ
让好多在校和工作了的都来玩
也不至于去这个学校去哪个学校
有好多学校没有的也可以进来
待成熟后再准备没周都比赛
#5
sunnvya2006-09-10 16:38
不是那样的
象ACM那样
在线提交,不要评委
#6
静夜思2006-09-10 16:40
好的,最好有专门的系统来管理题库,论坛的功能毕竟有限,不是万能的,比如论坛扩展出来的交易发起聚会功能都不是很好用。
这个宏伟蓝图先当作计划吧,真正做起来成本很高。
#7
sunnvya2006-09-10 16:49
你先去北大ACM看下http://acm.pku.edu.cn/JudgeOnline
这个在先提交平台很成熟
而我看来你这个论坛可以不怎么扩张
现在就是好多学校各有各的ACM网站
但国内就是没有统一的
我想做个这个影响是很大的
技术上你完全可以参照北大ACM
#8
sunnvya2006-09-10 16:51
管理软件都有
好象不用自己做
#9
baidu2006-09-10 16:59
ACM 系统做起来不难,也有现在的可以改一改。
我记得kaikai以前搞过这个
#10
baidu2006-09-10 17:03
如果建个OJ肯定能增加人流 ^_^
#11
sunnvya2006-09-10 17:08
到时候跑北大浙大的学生都回跑这里来
建OJ不难的
大都是用PHP做,还有服务器是LINUX
#12
燃燒2006-09-10 17:20
以下是引用baidu在2006-9-10 17:03:00的发言:
如果建个OJ肯定能增加人流 ^_^

人流....

#13
sunnvya2006-09-10 17:23
那就不说人流
到时候云集好多编程高手
#14
燃燒2006-09-10 18:19
呵呵

这的确是个不错的办法

如果静老大可以张罗弄下的话 ...
#15
静夜思2006-09-10 18:46
很感兴趣,不过恕我孤陋寡闻,到底什么是ACM?谁能给解释一下,ACM交流程序和论坛上传附件交流程序的区别在什么地方。
我英语不好,北大和浙大的都看不太懂。北大的那个好想是JSP平台的,能不能用ASP平台做?这样才能跟论坛整合,如果做的话,最好能一站通行。
当然做这个可能要过一段时间,我最近一个人有点忙不过来。
#16
sunnvya2006-09-10 18:54
acm是国际大学生程序设计大赛
在那里每次比赛都有好多编程高手
如果在这里建设个这样的平台
对学生对工作的人都有很大的帮助
可以吸引更多的人加入这个网站
锻炼更多的菜鸟
#17
sunnvya2006-09-10 18:56

我们不需要专业人员去评判题目
那个系统回自动评判的

#18
live412006-09-10 18:57
#19
静夜思2006-09-10 18:58
可以自动打分吗?比如大家一起写一个C预言程序,放上去以后,系统会自动根据程序的优劣排出名次来吗
#20
sunnvya2006-09-10 19:03
他可以自己评判对错
分到不用考虑
就是看做题目的真确个数
要是个数一样还有其他条件评判名次分别的
很方便的
现在除了学校一般没有其他的地方搭建这样的网站
不过这很手欢迎的
#21
静夜思2006-09-10 19:06
LIVE41的这个链接跟楼上说的不一样啊,IBM独家赞助
#22
静夜思2006-09-10 19:06
以下是引用sunnvya在2006-9-10 19:03:59的发言:
他可以自己评判对错
分到不用考虑
就是看做题目的真确个数
要是个数一样还有其他条件评判名次分别的
很方便的
现在除了学校一般没有其他的地方搭建这样的网站
不过这很手欢迎的

题目和答案是由人先在计算机里面设定好的对吗?就像计算机等级考试的上机题一样,系统判断对错打分。

#23
sunnvya2006-09-10 19:08
是的
但我没做过
你自己可以去做个题目去熟悉一下啊
#24
baidu2006-09-10 19:10
ACM原理差不多就是这样:

主要是使用的语言是C语言或帕斯卡语言.

1.完成C源程序的提交,提交的文件名假定为Code.CPP
2.调用c语言的编译器,比如,GCC.exe对提交的源程序进行编译,比如得到执行文件 A.EXE
3.运行 A.EXE > B.TXT,得到结果 B.TXT,并记录运行时间且一旦A.EXE的运行时间超过设定值,则中止它,并记为超时.
4.将B.TXT与该题的标准答案比较,若不一致,则判为错,若一致,则记录提交者与运行时间


差不多就是这样,但这里有个安全问题,也就是说假如你想自己写一个ACM,你得考虑别人提交的代码是否合法.有一个简单的方法,禁用某些头文件,以防止提交黑客代码.
#25
sunnvya2006-09-10 19:11
跟IBM赞助没有关系
咋们也有国内的,一般都是先经过国内的再国际比赛
现在好多大学生喜欢编程的自己学校没有OJ网站就到北大或其他地方做
在我学校建设OJ前,我也不知道什么是ACM
#26
baidu2006-09-10 19:13

当然还有很细节,比如,GCC编译过程信息铺捉

#27
sunnvya2006-09-10 19:14
建议老大自己去做几个题目漫漫就会领悟了
#28
baidu2006-09-10 19:16
如果有意搞的,我可以帮你去问问kaikai,偶记得他以好象做是北大ACM维护
#29
静夜思2006-09-10 19:19
以下是引用baidu在2006-9-10 19:10:03的发言:
ACM原理差不多就是这样:

主要是使用的语言是C语言或帕斯卡语言.

1.完成C源程序的提交,提交的文件名假定为Code.CPP
2.调用c语言的编译器,比如,GCC.exe对提交的源程序进行编译,比如得到执行文件 A.EXE
3.运行 A.EXE > B.TXT,得到结果 B.TXT,并记录运行时间且一旦A.EXE的运行时间超过设定值,则中止它,并记为超时.
4.将B.TXT与该题的标准答案比较,若不一致,则判为错,若一致,则记录提交者与运行时间


差不多就是这样,但这里有个安全问题,也就是说假如你想自己写一个ACM,你得考虑别人提交的代码是否合法.有一个简单的方法,禁用某些头文件,以防止提交黑客代码.

总算明白一点端倪了
跟论坛没法整合,自己开发不可能。
如果都用一套程序,会不会各个大学的ACM的题目都一样,看样子他们都是用的现成的程序。
是不是ACM是人和机器的交流?有没有人和人之间的交流互动?

#30
sunnvya2006-09-10 19:19
我们学校的都是学生自己做的
俺也可以介绍他帮着做
可惜我就比较菜
#31
baidu2006-09-10 19:21
以下是引用静夜思在2006-9-10 18:58:44的发言:
可以自动打分吗?比如大家一起写一个C预言程序,放上去以后,系统会自动根据程序的优劣排出名次来吗

系统只记录两件事:
1.是否与标准答案一致.(判对错)
2.程序运行时间(排名次)

#32
静夜思2006-09-10 19:22
比如出一个用C语言开发学生管理系统的题目,ACM能自动判断出谁编的好吗。
#33
sunnvya2006-09-10 19:23

是按照帐号提交的
#34
静夜思2006-09-10 19:23
以下是引用baidu在2006-9-10 19:21:23的发言:

系统只记录两件事:
1.是否与标准答案一致.(判对错)
2.程序运行时间(排名次)

比如题目让开发一个学生管理系统,有人开发一个饭店管理系统,ACM能判断出来吗

#35
静夜思2006-09-10 19:24
感觉跟前几天淄博法院开发的量刑系统有点像,可以替法官量刑,不过褒贬不一。
#36
sunnvya2006-09-10 19:25
我们只是作题而不是开发系统的
这些题目主要的是面对算法的
没有那么复杂
#37
baidu2006-09-10 19:25
以下是引用静夜思在2006-9-10 19:19:29的发言:

总算明白一点端倪了
跟论坛没法整合,自己开发不可能。
如果都用一套程序,会不会各个大学的ACM的题目都一样,看样子他们都是用的现成的程序。
是不是ACM是人和机器的交流?有没有人和人之间的交流互动?

1.题目是维护加的,也可以是任何一个提交的,而不是系统固有的
2.没有交流,实际上是对算法优劣一个相对客观的评定,当然不是很精确

#38
baidu2006-09-10 19:26
以下是引用静夜思在2006-9-10 19:23:49的发言:

比如题目让开发一个学生管理系统,有人开发一个饭店管理系统,ACM能判断出来吗

不能

#39
baidu2006-09-10 19:27
以下是引用静夜思在2006-9-10 19:22:45的发言:
比如出一个用C语言开发学生管理系统的题目,ACM能自动判断出谁编的好吗。

不能,只能做一些比如计算10000!,看谁快

#40
sunnvya2006-09-10 19:29
条件主要是限制时间内存
与所给数据判断正确性
#41
baidu2006-09-10 19:30
我的看法玩OJ的人有两种:喜欢算法以及初学者
#42
静夜思2006-09-10 19:34
明白了,等论坛有了独立服务器我装上试试,现在上面还有网站、博客、下载等其他的东西,不敢轻易装软件,稳定最重要。
自己开发不可能了,我没有这个能力
说说我的想法,到时候装上不难,只是不知道会员对这个买不买帐。
#43
sunnvya2006-09-10 19:34

我都想把北大的题目有时间都做
#44
sunnvya2006-09-10 19:37
怎么不会买呢?
一边可以在这里讨论另外还可以作题(上机实验)
他那不用开发
有现成的OJ系统下载北大
#45
静夜思2006-09-10 19:45
事实和想象的不一样的,就像北大和浙大还有贵校的ACM,都很有影响力,学计算机的学生都不少,参与的人并不多。
#46
静夜思2006-09-10 19:53
我刚做论坛的时候以为这么大的论坛肯定会立马高手云集,可几个月之内并没有想象的那么火爆。
当然现在有很多高手了,如上面回帖的baidu、live41、燃烧、楼主……
#47
sunnvya2006-09-10 19:54
象你这个网站还有好多人不知道ACM呢
再说也有好多大学没有做OJ的啊
如果老大你来建这个,会很方便好多爱好编程的人呢
而且回还有更多的人来参加
象我们这些人那乐意去别的学校做啊
好象有点门户之见的感觉
而你这个是面对所有爱好编程的人
学校的主要是面对学校的学生

#48
sunnvya2006-09-10 19:57
要是你做的话我帮你宣传
我一天到晚到别的论坛和高校论坛发帖子去
#49
燃燒2006-09-10 19:58
我觉得是可行的

这也能为像我们这样菜鸟提供更多的学习机会

这里学生很多,大家都想知道自己的能力到底如何,这个好事,静老大应该支持支持!~
#50
sunnvya2006-09-10 20:00
静老大
就这么决定吧!
我很菜,有什么要帮忙的我行的话就全力以负
#51
燃燒2006-09-10 20:04


楼主提的这个建议很好!

如果有用的到的地方,就说话
12