문제 설명
어떤 세균은 1시간에 두배만큼 증식한다고 합니다. 처음 세균의 마리수 n과 경과한 시간 t가 매개변수로 주어질 때 t시간 후 세균의 수를 return하도록 solution 함수를 완성해주세요.
제한사항
1 ≤ n ≤ 10 1 ≤ t ≤ 15
나의 코드
class Solution {
public int solution(int n, int t) {
for(int i=0; i<t; i++) {
n *= 2;
}
return n;
}
}
다른 사람 코드
class Solution {
public int solution(int n, int t) {
int answer = 0;
answer = n << t;
return answer;
}
}
느낀 점
반복문을 돌며 시간마다 2를 곱해주면 되는 쉬운 문제였다.
다른 사람 코드에서 비트 연산
을 통해 해결하는 방법도 존재했다. 비트 연산으로 한 칸씩 밀면 2를 곱한 것과 같은 값이므로, t만큼 밀어주면 정답이 나온다.