수박수박수박수박수박수?

송준희·2021년 1월 17일
0

알고리즘

목록 보기
19/44

n을 받아서 for문으로 i가 홀수, 짝수일 때 '수', '박'을 붙여줄 수 있었다.

하지만 n이 엄청나게 커질 경우 n번만큼 for문을 돌려야하기 때문에 비효율적이라고 판단했다.

그래서 append 작업을 가능한 한 줄이기 위해서 2진법을 사용했다.


bin의 index가 1씩 들어날 때마다 watermelon의 '수박' 개수는 2배씩 늘어난다.

bin[index]의 값이 1일 경우, watermelon을 answer에 append하고

마지막에 bin[index]가 1이면 answer에 '수'만 append하면 된다.

이 풀이를 이용하면 log(n)번만으로 문제를 풀 수 있다.


문제풀이

profile
오늘 달리면 내일 걸을 수 있다!

0개의 댓글