[소프트웨어 마에스트로 13기] 코딩 테스트 2차 후기
2차 코테는 어떻게 준비했나요?
소프트웨어 마에스트로(이하 소마) 선발과정 1차 코딩 테스트를 통과한 후, 2차를 준비할 때는 특별하게 소마 코테를 위해서 공부하기 보다는 기존에 하던 방식으로 PS 공부를 계속 이어나갔다.
GREEDY와 DP 카테고리 문제를 풀 차례였기 때문에 해당 문제들을 차곡차곡 풀었고 작년에는 1차 문제를 조금 더 어렵게해서 2차에서 문제가 나왔다는 얘기를 듣고 2차 코테 보기 며칠 전에는 1차 문제들하고 비슷한 문제를 찾아서 복기하면서 풀어봤다.
비슷했던 문제들은 1차 코테 후기에서 확인 가능하고,, 아무튼 결론부터 말하자면 1차 연계된 부분이 응시 당시에 어느정도 느껴졌다!
때문에 추후에 응시하시는 분들은 필히 1차 문제를 복기하시고 응시하시길 바란다.
알고리즘은 위처럼 하던 공부를 계속했고, SQL은 시험 보기 하루 전에 프로그래머스 고득점 킷을 한번 더 풀어봤다. WEB은 하루정도 JS랑 CSS 훑었는데,, 범위도 방대하고 어떤 식으로 문제가 나올지 감 조차 안잡혀서 그냥 포기했던 것 같다ㅎㅎ.
아래로는 2차 코테 문제에 관한 리뷰를 해보겠다.
2차 코테 개요
소마 2차 코테는 1차 때와는 다르게 알고리즘 3문제, SQL 1문제, WEB 1문제가 나왔다.
알고리즘 문제의 수가 1차 때는 6개에서 3개로 확 줄은만큼 난이도가 많이 어려워졌을 것이라고 예측했다.
문제 제한 사항은 1차 때와 똑같이 시간 제한 모든 테케 합 100초였고 메모리 제한도 널널한 수준이었다.
내가 세운 전력은 가장 쉬워보이는 문제(대충 수학, 완전 탐색, 쉬운 구현 문제 정도 예측 했다.) 한 문제 풀고, 그래프(DFS,BFS) 문제 하나 풀고, SQL 문제 풀어서 알고 2솔, SQL 1솔 합격을 노렸다.
지나고 나서 생각해보니 대충 전략 생각한대로 나온 것 같고 제출한 문제에 대해서는 크게 어려움을 겪지 않고 풀었다!
문제 정리
문제 유출 불가능하고 제가 제대로 복기하지 못한 부분이 있을 수 있기 때문에, 100프로 신뢰는 하지 마시고 참고만 해주세요.
풀이 및 제출한 문제는 초록색으로 표기. 제출하지 못한 문제는 빨간색으로 표기.
풀이하지 않은 문제에 대해서는 체감 난이도 평가를 하지 않았습니다!
문제 번호 | 알고리즘 | 체감 난이도 | 문제 내용 | 내 풀이 | 비슷한 문제 |
---|---|---|---|---|---|
1번 | 완전 탐색 | 백준 S1 | 조건에 맞춰서 케이스를 나누고 조합(itertools)을 뽑아 내는 문제. | 풀이하면서 '이게 맞아,,? 하지만 나에게 무려 테케 100초라는 시간이 있다구~!' 생각하면서 풀었다ㅎㅎ 1차 4번과 연계성이 느껴졌으며 케이스를 나눠서 모든 조합을 탐색했다. | 백준_n과 m 문제 시리즈 |
2번 | DFS,BFS,UF | 백준 G4 | 각 정점은 점수를 가지고 있고, 그래프를 탐색하면서 연결된 정점끼리의 평균 점수을 구하는 문제. | 어렵지 않은 그래프 탐색 문제였다. 가장 문저 떠오른 방법은 UF였는데, 굳이 안쓰고 BFS로 해도 상관없을 것 같아서 구현이 쉬운 BFS를 이용해서 풀었다. 말 그대로 탐색하는 노드마다 값을 기록해서 연결된 정점끼리 평균값을 내주면 됐다. | 프로그래머스_네트워크 |
3번 | DP | - | 백준 테트로미노 문제 상상상위호환 문제. | 30분 남았을 때, 해당 문제를 읽었는데,, 절대 못풀것 같아서 바로 스킵했다..ㅎㅎ | 백준_테트로미노 |
4번 | SQL | 프로그래머스 Lv3 | join과 between, 정렬, DATEDIFF를 이용하여 select하는 문제 | 1차 코테 SQL 문제와 비슷하지만, DATEDIFF 함수를 몰랐다면 헤맸을 것 같다. 전날에 SQL 함수 한번 훑은게 도움이 됐다. | 프로그래머스_join 문제 시리즈 |
5번 | WEB | - | JS를 활용하여 테이블을 정렬, 갱신하는 문제. | 시간이 20분정도 남아서 이 문제를 풀어보려고 했으나, 개발자 도구도 사용하면 안된다는 경고를 받고,, 문법 기억도 안나서 이것저것 헤매다가 깔끔하게 포기했다^ㅡ^. | - |
후기
전략 세운대로 알고 2솔, SQL 1솔을 한 것 같았다.. 하지만 오픈 챗방 확인하면서 복기해보니 두 번째 문제에 약간은 억울한(?) 오류가 있음을 발견하고 조금 슬펐다 흑흑..
두 번째 문제에서 답안을 출력할 때, 소수점 3번째 자리부터는 '절사'해야한다는 조건이 있었는데 별 생각 없이 '%.2f'로 했는데,
알고보니 %f 포맷팅은 자동으로 반올림을 해준다더라...
a = 3.12612421
print('%.2f' %(a)) # 출력 => 3.13
print('%.2f' %(int(a*100)/ 100)) # 출력 => 3.12
위 코드의 두번 째 출력 방식처럼하면 해결할 수 있었고... 다 구해놓고 출력때매 틀렸다고 생각하니 이건 좀 마음 아팠다!
하지만, 옵챗 보니까 이 부분 많이들 신경 못쓴것 같아서(나차럼,,) 충분히 안고 갈 만하다고 생각했다.
결과는 합격했다!!
이번에도 응시 인원에 절반정도 탈락시킬 줄 알았는데 분위기를 보니까 꽤 많은 인원이 합격한 것 같았다.. 뭐 나도 추가로 합격된 인원일 수도 있으니, 일단은 합격했다는 것 자체로 만족하기로 했다..!
또한 소마 2차 코테 합격을 목표로 잡고 방학동안 PS 공부했는데 초기의 목표는 달성했다는 사실은 정말로 기뻤다!! 소마가 워낙 경쟁률도 높고 잘하시는 분들도 많아서 크게 될거라는 기대는 안하고 있었는데.. 막상 2차까지 붙으니까 하고 싶다는 욕심이 너무 커졌다...
그제, 어제까지 하루종일 소마 면접용 포트폴리오를 만들었는데.. 면접까지 잘 봐서 꼭 13기로 선발되고 싶다..!!
이상 2차 코테 후기 끝!
Author And Source
이 문제에 관하여([소프트웨어 마에스트로 13기] 코딩 테스트 2차 후기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@jsb100800/소프트웨어-마에스트로-13기-코딩-테스트-2차-후기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)