세균 증식
문제 설명
어떤 세균은 1시간에 두배만큼 증식한다고 합니다. 처음 세균의 마리수 n
과 경과한 시간 t
가 매개변수로 주어질 때 t
시간 후 세균의 수를 return하도록 solution 함수를 완성해주세요.
제한 사항
- 1 ≤
n
≤ 10 - 1 ≤
t
≤ 15
입출력 예
n | t | result |
---|---|---|
2 | 10 | 2048 |
7 | 15 | 229,376 |
입출력 예 설명
입출력 예 #1
- 처음엔 2마리, 1시간 후엔 4마리, 2시간 후엔 8마리, …, 10시간 후엔 2048마리가 됩니다. 따라서 2048을 return합니다.
입출력 예 #2
- 처음엔 7마리, 1시간 후엔 14마리, 2시간 후엔 28마리, …, 15시간 후엔 229376마리가 됩니다. 따라서 229,376을 return합니다.
문제풀이 (나)
function solution(n, t) {
let i = 1;
while (t >= i) {
n = n * 2;
i++;
}
return n;
}
문제풀이 (다른사람)
function solution(n, t) {
return n << t;
}
2의 제곱이라면 비트연산자를 떠올리자.
훨씬 빠르게 가능하다.