1. 프로그래머스를 선택한 이유
알고리즘 문제 푸는 것을 좋아하여 이전부터 leetcode, 백준 등 다양한 플랫폼을 사용하여 문제를 풀어왔다.
물론 leetcode 와 백준 둘다 공부를 하기에 훌륭한 사이트이긴 하지만,
leetcode는 영어로 된 플랫폼이기도 하고, 문제가 살짝 '다이렉트'한 느낌이 있었다. 마치 '이건 DP문제야 array를 줄게 한번 풀어봐' 랄까.
백준도 문제가 다양하고 퀄리티도 훌륭했지만, UI 와 UX를 중요시하는 나로써 사실 손이 잘 가지 않았다.
프로그래머스는 UI와 UX가 너무 좋다. 맥북을 키면 자동으로 프로그래머스 부터 들어가는게 이제 습관이 될 정도로 하루 하루 한두문제씩 풀며 보람과 뿌듯함을 느꼈다.
어떤 사람들은 타 플랫폼에 비해 문제 수가 적어 아쉽다하지만 나에게는 오히려 좀 더 다가갈 수 있는 실현 가능한 목표를 세울 수 있다는 점에서 만족스러웠다. (목표: 모든 문제를 풀어봐야지! 프로그래머스 1등을 찍어야지)
그래서 2023년 5월 부터 회사 동료들과 함께 매일 한 문제씩 풀고 서로 리뷰하기로 약속하며 프로그래머스를 풀기 시작했다.
2. 반 년에 걸친 노력
노션 플랫폼을 사용해서 서로 답안을 공유하고 때론 비평을 하며 한동안 즐겁게 하루하루를 보냈다.
하지만 나와 함께 하기로 했던 동료 중 한명은 1주일 후 그만두고, 나머지 한명도 1달 후 그만두어 개인 노션 페이지에 다시 기록을 하게 되었다. 😥
꾸역꾸역 하며 프로그래머스 레벨 3까지 다 풀고, 현재는 레벨 4 조금과 5를 남겨두고 있다.
등수도 점점 오르더니 현재는 62위이다! 1등까지 얼마 남지 않았다! 🥹
3. 풀고 난 후 성장
레벨 3까지 다 푸니까 확실히 알고리즘 능력이 향상된 것이 느낀다. 프로그래머스의 스킬체크 라는 항목이 있는데, 처음에는 레벨 2까지밖에 못갔다면 이제는 레벨3도 가볍게 취득하였다! 또한 이제 새로운 문제를 보아도 어떻게든 풀어버리는 능력이 생겼다. dp인가 싶어 풀다 안되서 brute-force 로 접근했다가 도저히 불가능하여 고민하다 binary-search로 풀어 성공했던 그 감격 스러운 날은 아직도 잊지 못한다.
특히 반 년 전에는, 긴 문제를 보면 압도 당하고 읽기도 전에 포기해버리는 나쁜 습관이 있었는데, 이제는 어떤 알고리즘을 써야하는 것인가 고민하면서 침착하게 문제를 읽는 능력도 생겨서 너무 뿌듯하다.
4. 앞으로의 다짐
내년 목표는 레벨 4, 5 문제들을 한번씩 다 풀어보고 레벨 3 에서도 어려웠던 문제들까지 복습해보는것이 목표이다.
그리고 요즘 점점 언급되는 PCCP인증 시험도 응시해보려 한다. 내 실력이 어느정도 되는가에 대한 측정값이 궁금하기도 하고, 또 이직할 때도 도움이 될 것 같아서 한 2월정도 목표로 준비할 것이다! 😃
'Computer Science > Algorithm' 카테고리의 다른 글
[프로그래머스] 아방가르드 타일링 (파이썬) (3) | 2023.12.25 |
---|---|
[프로그래머스] (python) PCCP 기출문제 2번 석유 시추 풀이 (0) | 2023.11.29 |
[CI/CD] (초보자도 바로 하는) Sphinx 문서 Github 자동 배포 (0) | 2023.11.06 |