프로그래머스 코딩테스트 입문 완료 회고

Yunki Kim·2023년 1월 13일
0

시작하게 된 계기

회고라고 하기엔 정말 짧고 글을 안쓰기에는 뭔가 그래도 노력했는데 아쉬워서 남기는 글이다.

국비지원 과정을 수강하고있으면서 자바를 거쳐 스프링, 스프링 부트를 배워가는 중에 자바를 활용하는 점이 뭔가 아쉽게 느껴졌다.

어려운 기술을 쓰고싶다기보다는 뭔가 기본기를 사용하는데 생각하는데 걸리는 시간도 많고 다양한 해결 방법이 떠오르지 않았었다.

그래서 다른 공부를 하면서 코딩테스트 준비를 조금씩 하는게 어떨까 싶었다.
(실제로 도움이 되는지는 잘 모르겠지만 😅 무작정 시작해본것 같다)

그렇다고해서 일전에 아예 문제를 안풀어본것은 아니고 자바를 배울 때 과제 형식으로 몇몇 문제를 풀었었는데 그 때는 당장 배운 것을 바로 활용하려니 잘 사용하지 못해서 오히려 약간의 자괴감이 드는 듯한 기분이여서 유쾌한 경험은 아니였던 것 같다.


어떻게 문제를 해결했나?

인터넷에 흔히 코딩테스트 문제라고 올라오는 DFS, BFS, ~탐색, 등 바로 푸는 것은 힘들 것이라 판단해서 자신감도 키울겸(?) 백준에서는 단계별로 문제풀이, 프로그래머스에서는 레벨 0의 문제를 풀어보기 시작했다.

일단 제목이 프로그래머스니까 프로그래머스 위주로 작성해보면 처음에는 간단한 출력문제들이 많아서 편하게 풀었는데 가끔씩 레벨 0문제가 맞는건가 싶은 문제도 있었다.

그래도 객관적으로 보면 많은 문제는 아니지면 내 기준에서 많은 문제를 풀어보고 어느정도 맞는 방식의 공부법을 얻을 수 있었던 것 같다.

문제랑 조건들을 보고 바로 떠오르는 경우에는 바로 풀고
바로 떠오르지 않는 경우에는 조금 생각하는 시간을 가져본다.

만약 떠오르는데 코드 작성이 힘들면은 그 떠오르는 메소드나 방식을 검색을 통해 사용법을 보고 코드를 작성해보는 식으로 진행했다.
그리고 도저히 못 풀 것 같은 문제는 다른 사람들의 풀이를 최대한 다양하게 보는 방식으로 진행했다. 언어가 다르더라도 일단 확인해보았다.

언어가 다르더라도 결국 비슷한 맥락으로 돌아가고 메서드나 일부 사용법이 살짝 다를 뿐이지 문제를 해결하는 매커니즘 자체는 비슷한 것 같았다.

문제를 해결하고나서도 위와 같은 맥락으로 다른 사람들의 풀이를 살펴보는 것이 중요하다고 생각한다.
그렇게해서 스트림이나 람다같은 생소한 것들도 사용해보면서 어느정도 익힐 수 있는 좋은 기회였다고 생각한다.


후기

후기라고 해야하나 아직까진 구현 위주의 문제만 풀어봤기에 자료구조나 알고리즘 등은 잘 모르지만 조금씩 지금처럼 꾸준히 도전해 볼 생각이다.

코딩테스트가 일종의 토익이라는 말처럼 실제 실무에서는 쓰기 애매한 경우도 있다고는 하지만 코드 작성의 경험을 늘리는데는 확실한 동기부여와 약간의 성취감을 주는 좋은 재료라고 생각한다.
(이제 레벨 100문제 풀고 백준도 막 실버에 도착한 수준에 이런 말은 무모할 수 있지만 😁)

0개의 댓글