본문 바로가기
algorithm

[프로그래머스]세균 증식 - java, python

by skysline 2023. 3. 3.
반응형

`세균 증식`

문제 설명

어떤 세균은 1시간에 두 배만큼 증식한다고 합니다.

처음 세균의 마릿수n과 경과한 시간 t가 매개변수로 주어질 때 

t시간 후 세균의 수를 return 하도록 solution 함수를 완성해 주세요.

입출력 예

입출력 예



입출력 예 #1

  • 처음엔 2마리, 1시간 후엔 4마리, 2시간 후엔 8마리,..., 10시간 후엔 2048마리가 됩니다. 따라서 2048을 return 합니다.

입출력 예 #2

  • 처음엔 7마리, 1시간 후엔 14마리, 2시간 후엔 28마리,..., 15시간 후엔 229376마리가 됩니다. 따라서 229,376을 return 합니다.

java code

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){
	return IntStream.range(1,t+1).reduce(n, (acc, i) -> acc * 2);
    }
}

python code

def solution(n, t):
    answer = n
    for i in range(t):
        answer *=2
    return answer
다른풀이
def solution(n, t):
	return 2**t*n

t 만큼 n을 곱하면 되는 간단한 문제이다.

하지만 나는 n~t 만큼을 반복하면 왜 안 나오지 하고 있었다... 반성 ㅜㅜ

똥멍청이가 된 것 같다..

반응형

댓글