惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Attack and Defense Labs
Attack and Defense Labs
The GitHub Blog
The GitHub Blog
C
Check Point Blog
博客园_首页
MongoDB | Blog
MongoDB | Blog
N
Netflix TechBlog - Medium
F
Full Disclosure
Microsoft Security Blog
Microsoft Security Blog
爱范儿
爱范儿
Recent Announcements
Recent Announcements
阮一峰的网络日志
阮一峰的网络日志
G
GRAHAM CLULEY
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Threat Research - Cisco Blogs
C
Cybersecurity and Infrastructure Security Agency CISA
V
Vulnerabilities – Threatpost
K
Kaspersky official blog
博客园 - 司徒正美
S
Schneier on Security
T
The Exploit Database - CXSecurity.com
Project Zero
Project Zero
云风的 BLOG
云风的 BLOG
Cisco Talos Blog
Cisco Talos Blog
Know Your Adversary
Know Your Adversary
雷峰网
雷峰网
V
V2EX - 技术
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Spread Privacy
Spread Privacy
罗磊的独立博客
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
S
Security Affairs
SecWiki News
SecWiki News
Schneier on Security
Schneier on Security
O
OpenAI News
Jina AI
Jina AI
PCI Perspectives
PCI Perspectives
Cyberwarzone
Cyberwarzone
Y
Y Combinator Blog
Apple Machine Learning Research
Apple Machine Learning Research
B
Blog RSS Feed
I
InfoQ
D
Docker
P
Palo Alto Networks Blog
Recorded Future
Recorded Future
M
MIT News - Artificial intelligence
博客园 - Franky
B
Blog
Scott Helme
Scott Helme
博客园 - 叶小钗
D
DataBreaches.Net

博客园 - guojin

ASP.NET整理:Cookie,Application,Session,页面生命周期 安装 SQL SERVER 2008 必须使用 "角色管理工具" 错误 的 解决方案 (转) 新概念英语第三册课后题答案 设置服务器定时重启 http status code 数据库中索引的优缺点(转) 几类常用Case工具介绍(有点老,但还是具有参考性,对应找较新版本就是了) - guojin PowerDesigner建模工具简介(转) 如何查看一个网页打开速度 reset sql server express sa password - guojin 服务器维护tips - guojin (转)11款网站服务器监测通知工具 - guojin sql server 2000 数据同步(2) sql server2000 数据同步 asp.net页面中 回车触发提交事件(转) - guojin 登陆界面设计得不错 Fetion分析之二:服务器地址从何而来——变态的配置文件(转) 飞信Fetion历史数据库研究(History.dat)——嵌入式数据库SQLite介绍(转) Google黑板报上连载的长文
经典算法和OJ网站(开发者必备-转)
guojin · 2014-04-08 · via 博客园 - guojin

一. Online Judge简介:

Online Judge系统(简称OJ)是一个在线的判题系统。用户可以在线提交程序多种程序(如C、C++、Pascal)源代码,系统对源代码进行编译和执行,并通过预先设计的测试数据来检验程序源代码的正确性。

一个用户提交的程序在Online Judge系统下执行时将受到比较严格的限制,包括运行时间限制,内存使用限制和安全限制等。用户程序执行的结果将被Online Judge系统捕捉并保存,然后再转交给一个裁判程序。该裁判程序或者比较用户程序的输出数据和标准输出样例的差别,或者检验用户程序的输出数据是否满足一定的逻辑条件。最后系统返回给用户一个状态:通过(Accepted,AC)、答案错误(Wrong Answer,WA)、超时(Time Limit Exceed,TLE)、超过输出限制(Output Limit Exceed,OLE)、超内存(Memory Limit Exceed,MLE)、运行时错误(Runtime Error,RE)、格式错误(Presentation Error,PE)、或是无法编译(Compile Error,CE),并返回程序使用的内存、运行时间等信息。

目前有不少在线测试平台,这些平台提供了很多很好的编程题,当然著名的acm中会有很多难题,如果你想挑战自己的智力极限,如果你对编程很有兴趣,那么就可以去这些平台注册,然后编程提交,跟其他编程高手一较高下。在线测试平台往往提供多种语言的支持,对于一道题,你可以用自己喜欢的语言来编写,但是要想排名更前,就得考虑语言的效率问题,所以你会发现里面的高手多用c或c++。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

二. 算法和OJ网站

※ The ACM-ICPC International Collegiate Programming ContestACM/ICPC) 

    ACM是一个给全世界高等院校学生参加的算法程序设计大赛,比赛目的在于考验选手临场逻辑思维和程序编写能力。ACM首先在世界各地举办初赛,然后从各个赛区选拔表现优秀的队伍,角逐世界总决赛。

 西班牙Valladolid大学Online JudgeUVA) 

     世界上最大最有名的OJ,题目巨多且杂(2500+),数据也很刁钻,全世界的顶尖高手都在上面。据说如果你能在UVA上AC一千道题以上,就尽管向IBM、微软什么的发简历吧,绝对不会让你失望的。

 俄罗斯Ural立大学Online JudgeURAL) 

     也是一个老牌的OJ,题目不多,但题题经典。

 俄罗斯萨拉托夫国立大学Saratov State University SGU) 

     SGU是俄罗斯萨拉托夫国立大学用于培养ACM选手的训练网站。这个网站的建成时期较晚,但随着比赛的举行以及新题目的加入,这个题库的题目也日渐丰富。这个题库的一大特点就是OJ功能强大,它不仅使你避开了多数据处理的繁琐操作,还能告诉你程序错在了第几个数据。这一点虽然与ACM的Judge有些出入,但是却方便了调试程序。与UVA相比,这里的题目在时间空间上要求都比较严格,而且更多的考察选手对算法的掌握情况,所以特别推荐冲击NOI的选手也来做一做。

 全美计算机奥林匹克竞赛Online JudgeUSACO) 

     USACO的特点是做完一关才能继续往下做,与前面的OJ不同的是测试数据可以看到,并且做对后可以看标准解答,所以如果大家刚开始的时候在上面那些OJ上总WA却找不到原因的话,可以试着来这里做做,看看测试数据一般是从什么地方阴你的。

 浙江大学Online JudgeZOJ) 

     国内最早也是最有名气的OJ,有很多高手在上面做题。特点是数据比较刁钻,经常会有你想不到的边界数据,很能考验思维的全面性。

 北京大学Online JudgePOJ

     建立较晚但题目加得很快,现在题数和ZOJ不相上下,特点是举行在线比赛比较多,数据比ZOJ上的要弱,有时候同样的题同样的代码,在ZOJ上WA,在POJ上就能AC。

 同济大学Online JudgeTOJ

     其上OJ题数上不能与ZOJ和POJ相比,推荐这个OJ的原因是因为它是中文的,这对很多对英文不太感冒的兄弟是个好消息吧。它也因此吸引了众多高中的ddmm,毕竟他们的英文还差一些,呵呵。。上面的题目也更偏向于高中的信息学竞赛一些。

 杭电科大Online JudgeHDU

     里面不乏好题,培养出的很多牛人,毕业后就进了阿里。

 LeetCode 

     里面有很编程多面试的题目,可以在线编译运行。难度比较高。如果自己能都做出来,对面大公司很有帮助。

 TopCoder 

     该网站功能众多,其中一项是提供程序设计比赛。

⑾ ProjectEuler

     该网站专门提供能用程序计算出答案的数学问题,每个问题都会有对应的解答。

⑿ ACMSolver

     这个网站专门收集程序设计比赛及OJ的最新消息,可以说是面面俱到。

⒀ CODEFORCES

     喜欢这个OJ的原因是因为可以看到别人的代码,非常棒。

⒁ VirtualJudge

     这里面列出了一些常用的OJ,简直是一个大杂烩。

⒂ 演算法笔记

     这个网站是我比较喜欢的网站,美中不足的是全是繁体字。

⒃ InterviewStreet

     Interview Street是帮助知名科技企业招聘程序员的在线编程挑战平台。

⒄ 九度OJ

     最近特别火,不解释。

⒅ ACM之家

     很棒,里面有很多很棒的例子,值得学习。