为啥感觉好多题蚊香根本不用分开写程序

查看: 21298|回复: 27
【九度OJ做题总体流程】——写给对acm不熟悉的同学
主题帖子积分
Dream Catcher
考研年份2011
报考学校The Open University
本科学校The Open University
本帖最后由 ljjyxz123 于
20:01 编辑
由于看到很多同学发帖提问关于一些基本的OJ的操作,并且我为了给我的一个同学总结一个做题流程,
所以我总结了一下对于刚接触九度OJ的同学算是一个入门的小教程。
如果以前接触过acm的同学可以不用看了。
2.如果以前是王道论坛的用户,直接输入那个账号和密码就行。
&&如果不是的话,可以在首页新注册一个。
3.做题:在首页上方第二栏“在线练习”中点击“题库”,题目列表就出来了。
4.题目的大体框架:
(1)题目描述:会有一些小故事,或者要求你完成的任务。
(2)输入:对于输入数据的格式及范围的描述。
(3)输出:对于输出数据的格式及范围的描述。
(4)样例输入:给出一个输入数据的例子。
(5)样例输出:给出一个输出数据的例子,自己写完程序后可以拿“样例输入”中的例子测试一下自己的程序,看输出跟“样例输出”的结果是否一样,一样的话就可以提交程序了。如果不一样,需要改程序直到一样。
(6)提示:一般有一些需要注意的地方这里会说出来。
5.程序的大体框架:
拿1000:计算a+b举个例子,
(1)一般常用到的头文件入下:
#include&iostream&
#include&stdio.h&
#include&stdlib.h&
#include&algorithm&//算法库,有些排序程序会用到
#include&math.h&//一些数学的函数会用到这个库
#include&string.h&//字符串处理的时候会用到
这些做一般的题目就都够了,有些题目也可以不用把这些头文件全部添加进去,不过我一般的做法是直接全加进去,反正不花钱,哈哈。
(2)输入的时候需要注意,一般题目都是有多组测试样例,所以需要循环输入。
比如1000这道题目输入a和b的时候,
C++:& & & & while(cin && a && b)
& & & & {...}
C:& & & & while(scanf(&%d %d&, &a, &b) != EOF)
& & & & {...}
然后在大括号里面按照题目要求写程序就可以了。
(3)输出:有的题目的输出有可能不是只让输出数字的答案,就按照它的要求加上需要输出的一些字符就行,比如:1046那道题目,printf(&max=%d&, &ans);就行。
(4)1000:计算a+b的完整代码(以后写题目可以作为参考,基本框架这里就有了)
(对了,主函数main的返回值必须为int,然后在程序中return 0就行。)
#include&iostream&
#include&stdio.h&
#include&stdlib.h&
#include&algorithm&
#include&math.h&
#include&string.h&
int main()
& & & & int a,
& & & & while(cin && a && b)
& & & & & & & & int ans = a+b;
& & & & & & & & cout && ans &&
& & & & return 0;
#include&iostream&
#include&stdio.h&
#include&stdlib.h&
#include&algorithm&
#include&math.h&
#include&string.h&
int main()
& & & & int a,
& & & & while(scanf(&%d %d&, &a, &b) != EOF)
& & & & & & & & int ans = a+b;
& & & & & & & & printf(&%d\n&, ans);
& & & & return 0;
6.题目写完后,点“提交就行了”,可以选择语言,在代码框中粘贴上你的代码,点“submit”就可以提交了。稍等一下刷新一下页面就能出现你的题目的返回结果了,一般返回结果会有以下几种情况:
(1)Accepted : 程序通过!
(2)Running & Judging: 正在运行和判断.
(3)Compiling : 正在编译.
(4)Presentation Error : 答案基本正确,但是格式不对。
(5)Wrong Answer : 答案不对,仅仅通过样例数据的测试并不一定是正确答案,一定还有你没想到的地方.
这几个是比较常见的,还有一些返回结果可能以后做题会遇到,到时候再说就行。
祝大家做题顺利!
& & & & by 玄影游侠
我知道我的未来不是梦,我认真地过每一分钟!
我的博客:
主题帖子积分
王道论坛初级道友, 积分 26, 距离下一级还需 174 积分
王道论坛初级道友, 积分 26, 距离下一级还需 174 积分
主题帖子积分
Dream Catcher
考研年份2011
报考学校The Open University
本科学校The Open University
欢迎来刷题。
我知道我的未来不是梦,我认真地过每一分钟!
我的博客:
主题帖子积分
王道论坛初级道友, 积分 53, 距离下一级还需 147 积分
王道论坛初级道友, 积分 53, 距离下一级还需 147 积分
考研年份2012
本科学校南京财经
好贴!谢楼主!
主题帖子积分
Dream Catcher
考研年份2011
报考学校The Open University
本科学校The Open University
不客气,欢迎来刷题!
我知道我的未来不是梦,我认真地过每一分钟!
我的博客:
主题帖子积分
王道论坛实习道友, 积分 16, 距离下一级还需 4 积分
王道论坛实习道友, 积分 16, 距离下一级还需 4 积分
考研年份2012
报考学校中科院
本科学校河北工大
主题帖子积分
Dream Catcher
考研年份2011
报考学校The Open University
本科学校The Open University
我知道我的未来不是梦,我认真地过每一分钟!
我的博客:
主题帖子积分
王道论坛初级道友, 积分 102, 距离下一级还需 98 积分
王道论坛初级道友, 积分 102, 距离下一级还需 98 积分
考研年份2013
报考学校中国科大
本科学校合肥工大
主题帖子积分
Dream Catcher
考研年份2011
报考学校The Open University
本科学校The Open University
夏日么么茶
欢迎来刷题。
另外,你的ID怎么感觉这么熟悉啊,是不是任贤齐的一部电影?
我知道我的未来不是梦,我认真地过每一分钟!
我的博客:
主题帖子积分
考研年份2011
报考学校哈工程
进来向强哥学习下ACM
主题帖子积分
Dream Catcher
考研年份2011
报考学校The Open University
本科学校The Open University
我知道我的未来不是梦,我认真地过每一分钟!
我的博客:
主题帖子积分
王道论坛初级道友, 积分 25, 距离下一级还需 175 积分
王道论坛初级道友, 积分 25, 距离下一级还需 175 积分
考研年份2012
报考学校重庆大学
本科学校黄淮学院
确实没接触过,,看了看差不多弄明白了!
倚楼听风雨,淡看江湖路
主题帖子积分
王道论坛实习道友, 积分 15, 距离下一级还需 5 积分
王道论坛实习道友, 积分 15, 距离下一级还需 5 积分
考研年份2012
报考学校北京航空航天大学
本科学校中南民族大学
scanf(&%d %d&, &a, &b) != EOF 能否帮我解答一下:在循环中这句在什么情况下会终止?谢谢
主题帖子积分
王道论坛中级道友, 积分 291, 距离下一级还需 709 积分
王道论坛中级道友, 积分 291, 距离下一级还需 709 积分
考研年份2012
& & 应该是不输入就当作结止吧。
永远年轻,永远热泪盈眶!
主题帖子积分
王道论坛中级道友, 积分 291, 距离下一级还需 709 积分
王道论坛中级道友, 积分 291, 距离下一级还需 709 积分
考研年份2012
好久没接触ACM了。。
谢谢学长了啊。
原来是全部写比较好的啊,我以前经常都只写个stdio.h就完事,收获了。
#include&iostream&
#include&stdio.h&
#include&stdlib.h&
#include&algorithm&
#include&math.h&
#include&string.h&
永远年轻,永远热泪盈眶!
主题帖子积分
王道论坛中级道友, 积分 239, 距离下一级还需 761 积分
王道论坛中级道友, 积分 239, 距离下一级还需 761 积分
考研年份2012
报考学校武汉大学
本科学校长春理工大学
好东西 谢谢分享~
仰望星空,脚踏实地~
主题帖子积分
考研年份2013
报考学校西南交大
本科学校山西大学
顶!谢楼主~
主题帖子积分
考研年份2014
报考学校华东师大
本科学校上外
& &输入错误 或者 按了Ctrl + z
|||王道论坛查看: 3153|回复: 18
觉得用Python写程序就不是真的写程序~ 快来拍死我吧!!!
精华主题学分
中级农民-加分请看右边栏-多参与|分享|记录|反馈, 积分 483, 距离下一级还需 17 积分
在线时间 小时
购买链接:
注册一亩三分地论坛,查看更多干货!
才可以下载或查看,没有帐号?
po主最先接触的就是Python 又因为po主未来想做data 所以python相关的package最常用 于是也习惯python
但是po主有个强迫思维 觉得python写程序就不算真的“写程序”, po主觉得那些用C++和Java写程序的才是“写程序”。。。。. Waral 鍗氬鏈夋洿澶氭枃绔,
另外po主觉得python用起来简单顺手,不是cs/is/ce出身,随便一个mba写写也可以,没有c++和java那种入门门槛~~ 所以一直觉得c++和java高大上(c更加高大上!)
大家快来安慰一下po主~~~ or 拍死我吧!
<p id="rate_800" onmouseover="showTip(this)" tip="Q微信办文凭毕业证成绩单学历认证&大米 + 1 升
" class="mtn mbn">
精华主题学分
在线时间 小时
关注一亩三分地公众号:Warald_一亩三分地
po主最先接触的就是C++又因为po主大学本科搞acm,C++ STL 用得飞起,所以刷题也用C++.
但是po主有个强迫思维 觉得C++写程序就不算真的“写程序”, po主觉得那些用Racket/Clojure/OCaml/Haskell才是真的写程序。
另外po主觉得C++用起来简单顺手,不是数学思维特别好的人,随便一个高中生写写也可以,没有Racket那种入门门槛~~ 所以一直觉得Racket和Clojure高大上(lisp更加高大上!)
. From 1point 3acres bbs
大家快来安慰一下po主~~~ or 拍死我吧!
<p id="rate_45" onmouseover="showTip(this)" tip="欢迎来一亩三分地论坛!&大米 + 1 升
" class="mtn mbn">
精华主题学分
在线时间 小时
关注一亩三分地微博:Warald
个人觉得写程序无所谓“真和假”,不论哪种语言想要写出“好”的程序代码,归根到底还是需要你的idea和logic;换句话来说,我觉得编程的思想更重要于使用的程序语言,等你的编程水平提升到一定程度的时候,你再学别的语言的编程的时候会简单很多。当然,我说这话不怎么严谨,因为有些语言语法等方面差异还是很大的因而编程思想上可能有差异。但是,还是那句话,你的idea和logic是你做所有编程的根本,卡神就是个很好的例子。个人愚见,请指教。
精华主题学分
在线时间 小时
不管黑猫白猫,能抓到老鼠的就是好猫
精华主题学分
在线时间 小时
我也python。。。但还是要学一门java或c++的吧
精华主题学分
在线时间 小时
很好奇楼主python写的Word Ladder II是怎样的。
精华主题学分
在线时间 小时
没人在乎你咋想的,大家只在乎发offer的公司咋想的。有些公司不在乎你会啥,有些直接让你go home 了
精华主题学分
在线时间 小时
可以试试汇编语言,找找真正编程的感觉,C++,Java 都弱爆了 :)
精华主题学分
在线时间 小时
开源云计算平台Openstack很大一部分都是用Python写的
精华主题学分
在线时间 小时
po主最先接触的就是C++又因为po主大学本科搞acm,C++ STL 用得飞起,所以刷题也用C++.. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
但是po主有个强迫思 .... 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
哈哈 这个安慰好
精华主题学分
在线时间 小时
很好奇楼主python写的Word Ladder II是怎样的。.鏈枃鍘熷垱鑷1point3acres璁哄潧
比如这么短:
import collections 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
& & def findLadders(self, beginWord, endWord, wordlist):
& && &&&&&&
& && &&&:type beginWord: str
& && &&&:type endWord: str. from: /bbs
& && &&&:type wordlist: Set[str]
& && &&&:rtype: List[List[int]]
& && &&&&&&.鐣欏璁哄潧-涓浜-涓夊垎鍦
& && &&&wordlist.add(endWord)
& && &&&level = set([beginWord])
& && &&&parent = collections.defaultdict(set). 1point 3acres 璁哄潧
& && &&&while len(level)&0 and endWord not in parent:
& && && && &next_level = collections.defaultdict(set)
& && && && &for word in level:
& && && && && & for i in range(len(word)):
& && && && && && &&&for c in &qwertyuioplkjhgfdsazxcvbnm&:. more info
& && && && && && && && &nextWord = word[:i] + c + word[i+1:]. /bbs
& && && && && && && && &if nextWord in wordlist and nextWord not in parent:. from: /bbs
& && && && && && && && && & next_level[nextWord].add(word)
& && && && &level = next_level
& && && && &parent.update(next_level)
& && &&&res = [[endWord]].鐣欏璁哄潧-涓浜-涓夊垎鍦
& && &&&while res and res[0][0]!=beginWord:
& && && && &res = [[p] + r for r in res for p in parent[r[0]]]
& && &&&return res
精华主题学分
在线时间 小时
很好奇楼主python写的Word Ladder II是怎样的。
比如这么短:
import collections
& & def findLadders(self, beginWord, endWord, wordlist):
& && &&&&&&.
& && &&&:type beginWord: str
& && &&&:type endWord: str. from: /bbs
& && &&&:type wordlist: Set[str]. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
& && &&&:rtype: List[List[int]]. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
& && &&&&&&
& && &&&wordlist.add(endWord)
& && &&&level = set([beginWord])
& && &&&parent = collections.defaultdict(set).鏈枃鍘熷垱鑷1point3acres璁哄潧
& && &&&while len(level)&0 and endWord not in parent:
& && && && &next_level = collections.defaultdict(set). 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
& && && && &for word in level:
& && && && && & for i in range(len(word)):
& && && && && && &&&for c in &qwertyuioplkjhgfdsazxcvbnm&:
& && && && && && && && &nextWord = word[:i] + c + word[i+1:]
& && && && && && && && &if nextWord in wordlist and nextWord not in parent:
& && && && && && && && && & next_level[nextWord].add(word)
& && && && &level = next_level
& && && && &parent.update(next_level). 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
& && &&&. From 1point 3acres bbs
& && &&&res = [[endWord]].
& && &&&while res and res[0][0]!=beginWord:
& && && && &res = [[p] + r for r in res for p in parent[r[0]]]
& && &&&return res
精华主题学分
在线时间 小时
你用wxpython 写UI就有编程的感觉了
精华主题学分
在线时间 小时
编程语言当然是越简单越好。。
感觉你们说的那些。。只是没怎么用过所以这么觉得。。
精华主题学分
在线时间 小时
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
比如这么短:
import collections. /bbs
& & def findLadders(self, beginWord, endWord, wordlist):
卧槽,好一个golf
精华主题学分
在线时间 小时
编程语言之于程序员,正如程序员之于项目经理。
精华主题学分
在线时间 小时
其实c并不高大上。相反由于c没有oo实质上实现很多东西并不合适。它更适合作为驱动语言或者一些安全性需求高的语言。 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
lz千万不要唯底层论,这个逻辑下去那么恐怕汇编都不能满足你的要求,你该去写VHDL搭逻辑门(大雾),那个效率最高了。.
C++由于其oo的特性、STL的支持以及源于C的指针等特性,可以说一直是工业界进行高性能需求的软件如游戏、图像处理等进行implementation的杀手锏。而当对性能要求不那么高的时候,人们会选择用JAVA 或者 Python来提高效率。毕竟对于业界来说,效率是一切——C++对于普通的码农民工还是太难熟练运用了。
精华主题学分
在线时间 小时
记得当初大牛学长回校和我们交流经验时,我印象最深的一句话就是他说“程序员至少得掌握一门脚本语言”。
我也是最开始学的c、c++、java,但是这一年学python的时候感觉python确实比较实用。有些功能实现起来用c++的话也许要很长很长的代码,但是python往往不到1000行就可以搞定,节省很多时间和精力。
精华主题学分
在线时间 小时
弱的程序员比较用什么工具牛逼,强的程序员只关心用什么工具能最快达到目的
talk is cheap show your code
<form method="post" autocomplete="off" id="fastpostform" action="forum.php?mod=post&action=reply&fid=41&tid=144856&extra=&replysubmit=yes&infloat=yes&handlekey=fastpost"
onSubmit="
// TODO Howard 11/3/2015
var sbtn = $('fastpostsubmit');
sbtn.disabled =
sbtn.innerHTML = ' 回复发表中... ';
sbtn.setAttribute('background', sbtn.style.background);
sbtn.setAttribute('bordercolor', sbtn.style.borderColor);
sbtn.style.background = '#C7C7C7';
sbtn.style.borderColor = '#8B8B8B';
var form =
// --product--
var isValid = fastpostvalidate(form, null, 0);
if(!isValid) reoverBtn();
return isV
// --product--
// --testing--
//setTimeout(function() {
// var isValid = fastpostvalidate(form, null, 0);
// if(!isValid) reoverBtn();
//}, 2000);
// --testing--
您需要登录后才可以回帖
回帖并转播
回帖后跳转到最后一页
Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!
一亩三分地推荐 /5
地主Warald亲手做你的申请,针对你的背景和目标,考虑申请、学习、就业、移民等系列问题,制定申请策略。
“offer”指全额奖学金,免学费全免+每月工资,Berkeley, CMU, JHU, UIUC, Gatech, UMich, UCLA, Columbia,欢迎观赏。
电子工程、计算机、统计、金数金工、化工等, Stanford, Berkeley, CMU, Cornell, Yale, Columbia, Chicago, Duke, UPenn, UIUC, Brown, UMich, JHU等
有留学、申请、找工、职业规划上的难题?先上论坛提问!
论坛考古也帮不上忙,发帖得到的回答仍然不够?电话找Warald来解答!
WARALD新书上市啦:《你不知道的美国留学》清华大学出版社,各大电商发售
Powered by天极传媒:天极网全国分站
您现在的位置:
& &&程序员,不止干到35岁
写程序年龄不是问题 程序员不应只干到35岁天极网软件频道 09:42
  在中国,程序员不能超过35岁,似乎已经是不争的事实,软件开发工作就是青春饭,顶多靠毕业这十年的时间,超过这个年龄,要不成功跃身成为管理者,要不转行进入其他领域,好像再没有更好的选择,即使偶有继续坚持作开发的,也被看成另类一族。老外却不是这样,40,50岁仍然作开发工作的大有人在,甚至很多牛人,包括获得康柏最佳软件奖的Robber,仍在埋头作着他所喜欢的编码工作,为何如此差异。我仔细想了一下,特别是这一年参加了太多的技术培训,基本有了一些结论。
  首先,国内软件开发工作的性质决定这一切,我们所作的产品开发,真正技术含量并不高,高等院校毕业的学生,经过几年的培训和实践,基本都能掌握这些技能,而我们现有产品开发设计水平有限,对于软件开发的理解还仅限于编码,完成功能这些基本的需求,产品进度是第一驱动力,特别是一些小公司,把快速开发出产品作为最高目标,软件设计质量差,很少考虑可维护性,可扩展性这些重要的软件质量属性,仅仅追求功能和进度,产品以最快的速度完成设计,编码,少有测试甚至没有测试,就直接交付给客户,在客户那里暴露出各种各样的问题出来,开发人员就开始不断得为客户解决这样那样的问题,软件做到最后,很多人都会陷入自己不断挖掘出来的陷阱里走不出来,步入在复杂的系统中查找BUG,解决BUG,增加功能,引入新的BUG,再解决BUG,这样永无休止的恶性循环中,从事的都是一些低级开发工作,对于软件开发的理解无法上升到更高的层次,每天都疲于救火和拼命打补丁,软件维护成本居高不小,即使最终摆脱了这样的厄运项目结束,下一次软件开发又是同样过程的重复,这些无休止的低级开发和维护工作,会耗光一个人所有的激情和精力,随着年龄的增大,热情和体力都在衰减,而这些工作,只要毕业生经过培训,同样可以胜任,有着廉价的,并且充满热情的毕业生作竞争,身心疲惫的老程序员必然面对更大的竞争压力,做到最后,连他们自己都会失去对软件开发的兴趣,甚至会产生厌倦的情绪,对于这样的快速开发模式,十年开发经验和五年开发经验有很大区别吗?干吗不使用更经济便宜的开发人员。
  另一个原因,是我们中国人一向的官本位思想,开发人员始终处于一种很尴尬的境界,听起来从事的是高级技术工作,说起来也是以人为本,但是,有多少企业管理者真正重视和认可开发人员的,哪怕是硕士,博士,这些开发人员在大官,小官面前,都只是普通劳动者而已。程序员是一个没有未来的行业,哪怕资历再深,能力在强,也还是一个劳动者而已,只有当上领导,走上管理才是最终的出路,否则,薪水上不去,地位上不去,只能面对被淘汰的命运。
  实际不然,之所以出现这种问题,是国内对软件开发的一种错误理解。如果软件开发仅仅是代码编写,查找BUG,可以说,那实在是一些低级的软件行为,做了十年的开发人员,确实不见得比作了3年的人更强多少,反正是简单重复的工作,工作3年的一样可以作,而且有更大的热情和精力。但是,应该跳出这个怪圈,走向更高的领域,对软件开发重新进行认识。要明白,软件开发要融入工程化的思想,要有高度的设计能力,关注更多的软件运行属性和设计质量属性,同样的系统,不同的软件人员会做出完全不同的软件,正规,高效的开发团队要比游击队开发团队不只高出几十倍。软件开发,不仅仅关注功能,性能,更应该去研究可维护性,可扩展性等质量属性,不仅仅只关注代码,而更要上升为设计,复用等。软件开发不仅仅是写出C语言的代码,单元测试,同行评审,培训与学习,这同样是开发人员基本的素质,也是提高软件质量的最基本手段。举例来说,单元测试做好了,就可以让开发效率大大提高,也能让软件的维护成本降下来。把开发人员解放出来。同行评审可以让开发人员之间更多的交流和沟通,在设计,编码阶段严格控制软件质量,培训则是提高自身技术水平,从理论上提升自己的最好方法。先前这些主要的质量行为都被忽略了,而这恰恰是走出低级开发的最好途径。同时,还有更高层次的设计开发,软件重构,模块化,系统构架,搭建统一软件平台,度量软件质量等等,有了重构,就会写出可读性好,可维护性好的软件,甚至因此提高自己的软件设计能力,减少出错的几率;模块化,让软件最大程度的实现复用,提高软件开发效率和开发质量。软件构架设计,从技术层次上最早决定了软件的命运,而这里又有太多的技术,设计模式,软件规划等,让软件开发从编码上升到设计的层次,搭建统一软件平台,是大产品,系列化开发的必然之路,对于软件质量的度量,会让我们的软件开发变得更加透明,清晰,让我们更清楚的把握到软件开发过程,从各个环节去控制软件质量,而不是仅仅凭着感性的认识到了最后才去补救。
  以上这些知识,一个人,哪怕勤奋学习一辈子,也不可能完全具备所有的技能。35岁算什么,做到70岁都不晚。当然,你需要真正的热爱它,并且不断得学习和进修。所以说,软件开发人员,要作的事情太多了,软件实在是一个浩大的脑力工程,甚至会让人觉得这是一个投入/产出比最低的行业,因为要学习的知识实在太多了,每时每刻都要处于不断的学习和更新当中,呵呵,既然选择了,既然喜欢了,就投入进去,享乐于此了。最重要的是,我们自己能并且愿意去认识到这一点,跳出低级开发的怪圈,走向更高的层次
  同时,要意识到,一个资深开发人员的作用绝不亚于一个管理人员,高明的企业应该给予相同的待遇,要把培养和储备高级技术人才作为高科技企业的重点发展方向,这样才能让企业在人才领域得到不断积累,资深开发人员才会带出高效的开发团队,从而开发出高质量,高效率的软件,让企业在不断激烈的竞争中取胜。要明白,不是每个人都适合或者乐于转向管理的,很多人就是适合做开发工作,他们可以走得更深入,成为专家,应该充分发挥出他们的能力,让整个团队高效运作起来。
  所以说,开发人员,决不只是35岁,只要你愿意,可以作一生的开发,从中获得更多的快乐。
(作者:天极网开发频道责任编辑:郑重)
欢迎在新浪微博上关注我们
办公软件IT新闻整机为什么我们不用智力题来面试程序员 - 文章 - 伯乐在线
& 为什么我们不用智力题来面试程序员
我记得,我第一次面试的是一个前端开发岗位,面试官要我在白板上用JavaScript来写些东西,虽已经想不起当时的细节,但我清晰记得,那次让我自我感觉非常愚笨,那个在实际工作中有多大用武之地呢?
自此之后,我几乎没听过有关程序员招聘时所用花招的好话,但却听到了大量的不屑之语。当然了,有不少玩智力题的人喜欢在这种类型的面试中展现想象力,但我绝不是其中一员,我遇到过的大部分程序员也不属于此类。
我见过优秀的程序员在回答智力题时一败涂地,而糟糕的程序员却是表现不凡。所以,除非你要招聘一些程序员来为你设计下一代的搜索算法,否则叫他们在白板解谜对成功招聘没什么帮助。
我发现成功招聘程序员的唯一可靠方法就是查看他们现有的代码,讨论更大层面的问题,如果这些都过关,那就给他们一个试用机会。
虽然文章很短,但英文原文后面有100多个评论,观点非常多,建议。
摘编 Ja 的评论:
我完全同意!我最近去微软、亚马逊和Activision面试,这三家公司都有不现实的智力题类型的问题。我一直在做编程工作,我完全有能力胜任我应聘的岗位,然而这些智力题和脑筋急转弯挡住了我的去路。这些公司让软件工程师绝望了!他们要做的事就是看看我的简历,测试一些相关材料,然后他们会看到我能胜任。但是他们要我电话中实现一些修改过的堆排序算法。在现实世界中,我会在5分钟之内就Google一下。
摘编 john Hinnegan 的评论:
这要看是什么“智力题”。以我经验来看,他们是在用基本的 CS(计算机科学)概念(诸如排序)设为问题。这用来测试你是否真正理解基本概念,是否能应用它,恕我直言,这是评测应聘者的一种非常好的方法。
另外,如果和不会排序一组数字的工程师一起工作,我会感到羞愧。
网络上有不少知名IT公司的面试题,其中很多是属于智力题和脑筋急转弯类型(比如:How many golf balls can fit in a school bus? 一辆学校班车里面能装多少个高尔夫球?),但很可惜,很多这样面试题都是杜撰出来的。比如:Business Insider 网站杜撰的《》。Google 前招聘委员会成员 Gayle Laakmann 就撰文否认Google有类似的面试题,详情请参阅《》一文。
打赏支持我翻译更多好文章,谢谢!
打赏支持我翻译更多好文章,谢谢!
任选一种支付方式
关于作者:
可能感兴趣的话题
D,第一个1笔画成,第二个,1笔画成,第三个2,第四个1,也就是数列:1,1,2,1?
1+1=2,2+1=3
关于伯乐在线博客
在这个信息爆炸的时代,人们已然被大量、快速并且简短的信息所包围。然而,我们相信:过多“快餐”式的阅读只会令人“虚胖”,缺乏实质的内涵。伯乐在线内容团队正试图以我们微薄的力量,把优秀的原创文章和译文分享给读者,为“快餐”添加一些“营养”元素。
新浪微博:
推荐微信号
(加好友请注明来意)
&#8211; 好的话题、有启发的回复、值得信赖的圈子
&#8211; 分享和发现有价值的内容与观点
&#8211; 为IT单身男女服务的征婚传播平台
&#8211; 优秀的工具资源导航
&#8211; 翻译传播优秀的外文文章
&#8211; 国内外的精选文章
&#8211; UI,网页,交互和用户体验
&#8211; 专注iOS技术分享
&#8211; 专注Android技术分享
&#8211; JavaScript, HTML5, CSS
&#8211; 专注Java技术分享
&#8211; 专注Python技术分享
& 2017 伯乐在线

我要回帖

更多关于 彩丰行香港人根本不用 的文章

 

随机推荐