늦잠을 자서 공부방에 나가지 말까 고민하다가 갔다.
역시 갈까말까할때는 가야된다,,
'두 배열의 원소 교체' 문제를 두가지 방법으로 풀어볼 수 있었다.
첫번째 풀이를 했을때 두개의 테스트 케이스에서 시간초과가 났다.
재귀를 돌때마다 배열이 계속 정렬이 되어서 시간복잡도가 O((N+M) * K)
효율성을 고려하여 배열을 한번만 정리해서 시간복잡도가 O(1)이 되도록 하고 다시 풀어서 해결할 수 있었다.
'떡복이 떡 만들기' 문제도 풀고 '부품 찾기' 문제도 풀었다.
부품 찾기 문제는 재귀로 풀어보려다가 익숙하지 않아서인지 잘 풀리지 않았다.
그래서 우선, for문을 사용했고 두번째 풀이로 이진 탐색과 재귀를 사용했다.
이 문제는 재귀가 유용하지 않다는 것을 알았고 세번째 풀이로 map을 사용했다.
이렇게 여러 방법으로 문제를 푸니까 더 뿌듯하고 생각을 더 다양하게 해볼 수 있어서 좋았다.
댓글