Coding style 人们是如何快速解决编程竞赛的?
我希望这不是一个模糊/广泛/主观的问题。如果是,请把它关上 无论如何,在几次编程竞赛中(比如谷歌的代码堵塞、Facebook的黑客杯等等),当我成功地理解了一个问题并对如何解决这个问题有了初步了解时,我发现一半的问题已经被很多人解决了 我的问题是,这些人是如何变得如此优秀的?这纯粹是天才吗?这是经验吗?这是一种快速思考的能力吗?你建议我如何提高我的技能?我会说我是一个有能力的程序员。我最终可以解决其中的一些问题Coding style 人们是如何快速解决编程竞赛的?,coding-style,Coding Style,我希望这不是一个模糊/广泛/主观的问题。如果是,请把它关上 无论如何,在几次编程竞赛中(比如谷歌的代码堵塞、Facebook的黑客杯等等),当我成功地理解了一个问题并对如何解决这个问题有了初步了解时,我发现一半的问题已经被很多人解决了 我的问题是,这些人是如何变得如此优秀的?这纯粹是天才吗?这是经验吗?这是一种快速思考的能力吗?你建议我如何提高我的技能?我会说我是一个有能力的程序员。我最终可以解决其中的一些问题 此外,每当我检查winners的代码时,我都会看到许多宏被使用。这对我来说意味着他们
此外,每当我检查winners的代码时,我都会看到许多宏被使用。这对我来说意味着他们有一个模板(比如#定义循环到某个缩写版本),他们使用这个模板来更快地编程。这会有显著的区别吗?从统计上讲,任何拥有足够多观众的编程比赛都会吸引超级人才,他们能够以超高速写出漂亮优雅的代码。就像跑马拉松一样。在4小时内运行它真的很好,即使世界纪录是2小时左右。别担心
相反,关注代码的质量和优雅,而不是以超高速大量生产代码。练习,享受乐趣,不要太在意其他人的工作速度。问题是,你在与那些花大量时间掌握技能的人竞争,他们在这些比赛中竞争。你不太可能很快赶上,但是
How do these people get so good?
有解决问题的理论知识和实践,实践,实践
Is it pure genius?
Do macros make a significant difference?
这是可以的,但实践可以在合理的程度上弥补它
Is it experience?
对
不是真的。通过练习,您可以正确处理问题,并跳过问题陈述中不重要的细节
How would you suggest I improve my skills?
获得理论知识和实践经验
Is it pure genius?
Do macros make a significant difference?
它可能会减少你10%的时间,但可能不会更多。1)一直做到你做对为止2)一直做到你不会做错为止。简单来说,写很多代码,专注于你竞争的领域。哈哈,这是一个令人放心的答案。谢谢:)是的。实践是不可替代的。