오늘은 heap 파트의 마지막 문제를 풀었다. 이번 문제는 어려운 알고리즘을 적용해야 하는 문제는 아니었다. 주어진 API를 기능에 맞게 구현하는 문제였다. API가 4~5개 정도 있었는데 하나를 빼고는 모두 어떤 상황을 만들기 위한 입력을 받는 부분이라 쉽게 구현할 수 있었다.
마지막 API는 내용이 어렵지는 않았지만 정확히 작동하도록 구현하는게 쉽지 않았다. 일단 입력이 상당히 난해해서 디버깅하는데 애를 좀 먹었다. main 부분 코드가 주어지기 때문에 알아서 API를 호출해준다. 그래서 아직도 입력 텍스트만 보고는 이게 뭘하고 싶은건지 모른다. 시간이랑 공간 제약은 상당히 넉넉해서 문제를 풀 때 거의 구애받지 않았다.
중간에 깨달았는데 나는 문제를 너무 어렵게 풀고 있었다. 크기가 고정된 배열인 경우에 아직 배열이 꽉 차지 않은 상태에서 삽입 정렬을 할 때 괜히 구현만 복잡하게 해서 오류가 생겼다. 크게 오버헤드가 차이나지 않는다면 간단하게 구현하는 쪽이 오류가 생길 확률이 적다.
마지막엔 조건문을 너무 대충 걸어서 계속 문제가 생겼었다. 그것만 수정해주니 pass를 받을 수 있었다. 구현 문제가 문제를 풀 때에는 짜증나지만 풀고 나면 가장 뿌듯한 것 같다.
'etc > 삼성 알고리즘 과정' 카테고리의 다른 글
[14일차] Hash (2) (0) | 2022.02.08 |
---|---|
[13일차] Hash (1) (0) | 2022.02.07 |
[11일차] Heap (1) (0) | 2022.02.03 |
[10일차] Code Battle (0) | 2022.01.28 |
[9일차] Tree (2) (0) | 2022.01.27 |