2019 CAMPUS HACKDAY WINTER 코딩테스트를 봤다. 프로그래머스에서 2시간동안 3문제를 풀었다. 언어는 C, C++, Java, JavaScript, Python3, Swift, Kotlin 중 선택할 수 있었다. 문제마다 풀이 언어를 다르게 해도 된다는데 나는 Kotlin만 썼다.

 

간단하게 후기를 남겨보려고 한다.

학교에서 치려고 아침에 출발했는데 코딩테스트가 시작하는 11시에 도착하는 바람에 정류장 근처 스타벅스에 허겁지겁 달려가서 랩하듯 주문을 하고 문제를 풀었다.

 

지금까지 코딩테스트를 세번정도 경험해봤는데 그중에선 가장 쉬웠다. 아직 알고리즘 풀이 연습이 부족한 내가 풀 수 있을 정도였다면 난이도 자체는 쉬웠던 것 같다.

 

1번 문제

배열을 내림차순으로 변경하면서 바뀐 값과의 차이 합이 최소가 되는 경우를 구하는 문제였다.

반복문 한번 돌리면서 앞 뒤 원소를 비교하면 풀린다.

 

2번 문제

문자열 배열로 지도가 주어진다. 동서남북으로 경계선이 맞 닿은 나라가 몇쌍인지 찾는 문제였다.

문자열을 검사하면서 HashMap으로 맞닿은 나라를 중복되지 않게 하나씩 추가하는 방법으로 풀었다. 

 

3번 문제

버튼의 순서와 각 순서에 따른 점수가 주어진다. 그리고 플레이어가 입력한 스킬 커맨드가 주어진다. 스킬 커맨드를 분석해 얻을 수 있는 최고점을 찾는 문제다.

버튼 순서의 길이와 점수가 비례한다던가 하는 조건이 따로 없었다. 버튼 순서를 어떻게 하느냐에 따라 최고점이 달라진다. 그래서 순열로 버튼을 조합하는 모든 경우의 수를 찾아 점수를 모두 계산하는 코드를 짰다. 재귀를 쓰지 않는 더 좋은 방법도 있지 않을까 싶은데 떠오르지가 않았다. 

 

코드를 제출해도 테스트케이스를 몇개 맞췄는지 안알려줘서 어떻게 됐을지는 모르겠다.

매번 테스트를 볼 때마다 나의 연습 부족을 느끼고 있다.

 


 

 

합격했다!

학교 가는 길에 초대 메일을 받았다.

의미있는 경험이 될 수 있도록 최선을 다해야겠다.

'else' 카테고리의 다른 글

스위프트 프로그래밍 3판 리뷰  (1) 2019.11.16
나는 LINE 개발자입니다 도서 리뷰  (0) 2019.10.12
혼자 공부하는 C언어 리뷰  (0) 2019.09.14