경쟁력있는 프로그래밍을 시작하는 방법? [닫은]


17

나는 한동안 코딩을 연습했지만 문제는 문제에 대한 해결책을 작성하는 데 많은 시간이 걸린다는 것입니다. 경쟁 프로그래밍이이를 개선하는 데 도움이 될 수 있는지 묻고 싶습니다.

그렇다면 어떻게 시작하고 어떤 웹 사이트 ( TopCoder 등 )를 사용할 수 있습니까? 나는 지금 당장 어려운 문제를 해결할 수 없을 것입니다. 어떻게해야합니까?

아니라면 어떻게해야합니까?

나는 또한 코딩을 배우고 싶은 또 다른 문제가 있지만 문제는 내가 잘하지 못한다고 생각한다는 것입니다. 어떻게해야합니까? 내부에서 나를 괴롭히는 것과 같습니다.

일부 사람들은이 질문에 대한 정보를 찾지 못할 수도 있지만 적어도 답변을 받도록 허용하십시오.


1
협업 프로그래밍의 가치를 과소 평가하지 마십시오. 우리는 엔지니어링 / 대인 관계 문제에 대한 과도한 경쟁력으로 인해 팀에서 몇 가지 문제를 발견했습니다. 따라서 경쟁력있는 프로그래밍이 도움이 될 수 있지만 오픈 소스 프로젝트에 참여하거나 같은 생각을 가진 친구들과 프로젝트를 개발할 수 있습니다.
Gavin Howden

답변:


19

[속도] 향상에 경쟁력있는 프로그래밍이 도움이 될 수 있습니까?

그렇습니다. 충분한 시간이 주어지면 확실히 그럴 것입니다. 그러나 속도는 당신이 향상시킬 가장 중요한 기술이 아닙니다. 10 년 이상 TopCoder에 참여한 경험을 바탕으로 경쟁력있는 프로그래밍에서 얻을 수있는 가장 중요한 기술은 디버거를 사용하지 않고 간단한 코드 스 니펫을 처음으로 올바르게 작성하는 기능입니다.

TopCoder와 같은 사이트를 어떻게 시작하고 시작해야합니까?

Division 2의 실습실을 사용하십시오. Div 2의 레벨 1은 일반적으로 솔루션을 즉시 파악할 수 있다는 의미에서 "타이핑 콘테스트"이므로 작업이 가능한 빨리 코딩됩니다. 대부분의 실제 과제는 이와 같습니다. 디버거가 가장 큰 "시간 소진"이라는 것을 빨리 알 수 있으므로 코드를 디버깅하지 않고 자연스럽게 코드를 완성하려고 시도합니다. 처음에는 실망 스럽지만 시간이 지남에 따라 개선됩니다. 잘 익히려면 수백 개의 레벨 1 문제가 필요하므로 포기하지 마십시오.

머릿속에서 디버깅 하는 것은 실제 작업에서 도움이되는 기술입니다. 코딩 속도는 중요하지 않지만 디버깅없이 올바른 코드 스 니펫을 작성하는 기능을 사용하면 양호에서 뛰어난 것으로 전환 할 수 있습니다.


고마워 @dasblinkenlight!
Vaibhav Agarwal

10

초보 프로그래머는 코드의 품질과 코드 작성 속도에 더 관심을 가져야합니다. 기술을 확장하기 위해 스스로 프로젝트를 진행해야합니다. 공개 소스 프로젝트를 검토하여 다른 사람들이 코드를 작성하는 방법을 확인하고 공개 소스 프로젝트에 기여할 수 있습니다.

25 년이 넘는 다양한 플랫폼과 비즈니스 도메인에서 코드를 개발하면서 코드 작성 속도가 코드의 품질과 안정성보다 중요한 사례를 찾지 못했습니다.


그러나 경쟁에 참여할 때 코딩 경쟁이나 인터뷰 프로세스를 말하면 속도가 중요합니까? 그리고 너무 느낍니다.
Vaibhav Agarwal

@cdkMoose 그것은 좋지만 어디서부터 경쟁력있는 프로그래밍을 시작하는 방법을 제안 할 수 있습니까?
Vaibhav Agarwal

@VaibhavAgarwal Project Euler 문제 1 ~ 50 : 경쟁이되지는 않지만 (가장 최근의 문제를 해결 한 첫 번째 사람이 되려고하지 않는 한), 도전적이고 코딩 경쟁에서 예상되는 질문 유형 또는 인터뷰 과정.

@Vaibhav, 연습, 실습, 실습과 같은 다른 경쟁을 시작하는 방식으로 경쟁 프로그래밍을 시작합니다.
cdkMoose

1
@ Vaibhav : 당신은 프로그래밍을 배우고 싶다고 게시했습니다. 그것이 당신이있는 단계라면, 나는 개인적으로 당신이 전혀 경쟁적인 프로그래밍에 관심을 가져야한다고 생각하지 않습니다. 그것은 당신이 당신의 기술을 개발 한 후에 올 수 있습니다. 면접에 관해서는 면접 응시자들에게 완전한 프로그램을 쓰도록 요구하지 않습니다. 나는 그들의 이해와 사고 과정에 더 관심이 있습니다. 나는 그들이 문제를 기록 시간 내에 해결할 것이라는 것이 아니라 문제를 해결할 수 있다는 확신을 가지려고 노력하고 있습니다.
cdkMoose
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.