kimsungq1   5년 전

C++은 학교 수업으로 간단히, 자료구조는 c로 배운 상황이고

현재 자바 기본서를 책과 인강으로 공부하고 있습니다.

목표를 다양한 프로그래밍 대회 본선진출로 잡고 많은  분들이 추천해주신대로 기초알고리즘, 중급 알고리즘 등  공부 및 다양한 문제를 풀어보려하는데

언어가 고민입니다..

많은 분들이 C++을 추천해주셔서, 자바로는 공부나 문제 풀이에 있어 한계가 많은지 궁금합니다.

개인적으로는 자바를 학습하면서 가장 마음에 드는 언어인데, 알고리즘 및 프로그래밍 대회 준비에 있어서는 C++을 따로 준비해야 하는지

자바로 알고리즘 및 자료구조를 공부하는데 있어서 도움될만한 소스들도 공유해주시면 감사합니다.

3학년때 뒤늦게 입문하는 생초보한테 많은 도움 부탁드립니다..



solveit   5년 전

자신한테 맞는 언어 하시면 될것 같습니다.

백준에서도 자바는 기존 시간제한에 비해 더 넉넉하게 주니까 알고리즘만 맞다면 시간초과 문제는 거의 안날겁니다 (물론 빠른 입출력 방법 같은건 따로 쓰시긴 해야합니다)

그리고 일반적인 대회에서도 모델 솔루션은 속도가 느린 언어 (자바, 파이썬, 등)로 작성되기 때문에 속도 때문에 큰 페널티를 받을것 같지는 않구요.

마지막으로 현재 코드포스에서 1위인 Petr 님도 자바로 대회에 참가하십니다. 언어가 문제가 아니라는 좋은 예죠.

isku   5년 전

저두 JAVA를 사용하고 있습니다..

아무것도 모를 때, 윈도우에 이클립스가 있어서 그냥 JAVA로 처음 PS를 삼성 SCPC를 통해 해보았고,

그 이후로 재밌어서 백준에 가입해 계속 JAVA로 하고 있네요..

처음 언어 선택은 별다른 생각 없이 선택했지만,

문제를 풀다보니 C++ 사용자가 많고, 관련 정보나 정답 소스코드도 C++ 자료가 훨씬 많다는 걸 느낀 적이 있습니다.

팀 대회를 출전했을 때도 팀원간에 JAVA와 C++사이에 IDE 충돌이나, 서로 소스코드에 대해 의사소통이 어려운 적도 있었구요.

JAVA가 너무 익숙해져서, 저도 C++로 갈아타야 하나 많은 생각을 했었지만

시간이 지나다보니, PS는 언어의 문제가 아니란 걸 깨달았습니다..

1차적으로 문제를 해결 할 알고리즘을 생각해내지 못하면 아무리 코드를 잘 짠다 하더라도 소용이 없죠.

자신이 그 알고리즘을 가장 잘 표현할 수 있는 프로그래밍 언어가 JAVA면 JAVA를, C++면 C++를, 그냥 선택하기만 하면 되는 문제라 생각합니다.


아직까진 저는 언어 때문에 문제를 못 푼적은 없었고, 앞으로도 없을 것이라 생각합니다.

JAVA가 느리다고 해서 그만큼 각종 대회나, 온라인 져지에서 페널티도 주곤 합니다.

윗 분 말처럼 코드포스 현재1위 Petr님도 JAVA를 주 언어로 PS를 하고 있는데, 코드포스는 시간페널티가 없습니다.

이 말은 굳이 페널티 없어도 JAVA로 충분히 PS가 가능하다는 것을 뜻하겠죠!?

kimsungq1   5년 전

모두 정말 감사합니다 !

궁금증과 고민이 해결되었습니다.


댓글을 작성하려면 로그인해야 합니다.