코딩테스트 플랫폼 백준 골드 달성 후기


Mon, 04 Jul 2022 19:18 KST

두 달 전까지만 해도 비개발 직군 종사자였던 내가 골드?

백준인증

안녕하세요. shcDE입니다!
이번 포스팅에서는 제가 어떻게 두 달(2022.05.09 ~ 2022.07.01) 동안 자료구조도 모른 상태에서 골드5까지 레벨업을 했는지 말씀드릴 예정입니다.


우선 저의 공부 방식은 다음과 같았습니다.


처음 2주 동안은 박상길님의 ‘파이썬 알고리즘 인터뷰’ 책을 무턱대로 1회독을 하였습니다. 하지만 이렇게 하니까 이해는 안 되고 코드만 따라 치는 느낌이라서 공부 방식을 바꿨습니다.


노션인증

우선 ‘seeseal’님의 벨로그의 도움을 상당히 많이 받았습니다. 이 블로그 방식대로 제 개인 노션에 공부 계획을 정리하였습니다. 해당 블로그 내용을 제 개인 노션에 정리하면서 제가 상당히 비효율적인 방식으로 공부했다는 사실을 깨달았습니다.


그래서 파이썬 교과서로 유명한 박응용님의 ‘점프 투 파이썬’을 2회독을 하면서 파이썬 기초 문법에 대한 이해를 하기 위해 노력하였습니다. 그리고 이론을 잘 다지는 것도 중요하지만, 직접 코드가 손에 익어야 한다는 생각에 코드업 파이썬 100제 문제를 한 바퀴 돌면서 풀었습니다.


그 다음, 자료구조와 알고리즘 기초를 각각 다져야 한다는 생각에 오픈소스 사이트인 ‘더 북’에 접속하였습니다. 자료구조를 우선 양태환님의 ‘파이썬으로 배우는 자료 구조 핵심 원리’를 통해 3회독 하였습니다. 그 다음, 이승찬님의 ‘모두의 알고리즘 with 파이썬’을 3회독 하였습니다. 회독 방식도 추가로 말씀드리자면, 1회독 시에는 두 권 모두 코드를 직접 따라 치면서 정독하였고, 2, 3회독은 눈으로만 보면서 빠르게 익히는 방식으로 학습하였습니다.


다음으로, 백준 단계별 문제와 백준 공개 카테고리 문제를 마지막 페이지부터 역순으로 풀 수 있는 만큼 풀었습니다. 이 때 저는 프로그래밍을 즐기는 마음가짐을 유지하기 위해 도저히 못 풀 것 같은 문제는 다음에 풀 수 있을 것이라고 생각하여 바로바로 넘겼습니다. 프로그래밍이 질리지 않는 팁을 드리자면, 안 풀리는 문제가 발생하였을 때 해당 문제의 여러 풀이를 구글에서 확인하고, 왜 이 문제에는 이러한 라이브러리나 알고리즘 기법이 쓰였는지 고민하고 자신만의 방식으로 다시 한 번 풀어보면 좋습니다. 이렇게 할 경우, 이전에는 풀지 못했던 문제를 해결할 수 있게 되어 자신감도 생기게 됩니다.


이 단계까지 진행한 이후 이제 본격적으로 ‘파이썬 알고리즘 인터뷰’ 책을 다시 1회독을 하기 시작했습니다. 확실히 이전에 무작정 봤을 때와는 다르게, 책에서 쓰인 알고리즘이 왜 이 문제에 쓰여 있는지 알게 되었고, 이해도가 처음 개발 공부를 시작했을 때와는 다르게 많이 향상된 것을 느꼈습니다. 공부 방법은 한 챕터를 본 이후, 해당 챕터의 알고리즘 분류에 해당되는 문제 중 4문제를 푸는 방식으로 진행하였습니다. 그 결과, 13장까지 해당되는 문제를 풀었을 때 백준 실버1을 달성하게 되었습니다.


마지막으로 백준 골드5는 N사의 코딩테스트 응시 전날인 2022년 7월 1일에 달성하였습니다. 이 때는 제가 자신 있는 분류의 문제들을 집중적으로 풀었는데, 첫 코딩테스트를 응시하기 전에 골드5를 달성하겠다는 목표가 있었기 때문입니다. 7월 1일에 쉴 틈 없이 12문제를 해결한 결과, 골드5를 달성하게 되었습니다.


여기까지 제가 골드5를 달성했던 과정에 대해 말씀드렸습니다. 사실 백준 문제를 풀면서 두 개의 클래스 분류를 솔브하여 경험치가 100이 더해졌기 때문에 실력으로 골드를 달성했다고 말씀드리기는 어렵습니다. 실제 실력은 실버3~실버2 정도 되는 것 같다는 느낌을 많이 받았습니다. 하지만 앞으로 다양한 기업의 코딩테스트를 통과하기 위해 플래티넘5 레벨을 달성하고 새로운 후기를 올릴 예정입니다.


마지막으로 푼 문제의 레벨 분포와 유형 분포에 대한 자료를 첨부드립니다. 긴 글 읽어주셔서 감사합니다!!

레벨

유형

[레퍼런스]

  1. ‘seeseal’님의 벨로그(링크 : https://velog.io/@seeseal/%EC%BD%94%EB%94%A9%ED%85%8C%EC%8A%A4%ED%8A%B8-%EA%B3%B5%EB%B6%80%EB%B2%95)
  2. ‘파이썬으로 배우는 자료 구조 핵심 원리’(링크 : https://thebook.io/080200/)
  3. ‘모두의 알고리즘 with 파이썬’(링크 : https://thebook.io/006935/)
  4. 백준 단계별 문제(링크 : https://www.acmicpc.net/step)
  5. 백준 공개 카테고리 마지막 페이지(링크 : https://www.acmicpc.net/workbook/public/48)