코딩테스트

코딩테스트 개미 군단

김도현2 2023. 5. 28. 20:47
반응형

코딩테스트 개미 군단

 

 

 

 

 

문제 설명

 

 

 

 

출력 예시

 

 

장군개미는 데미지가 5

병정개미는 데미지가 3

일개미는 데미지가 1 입니다.

 

개미들끼리 레이드 하러 가는데 보스몹을 딱뎀으로 잡아야 합니다!

보스몹의 hp수치에 맞게 개미들의 숫자를 최소병력으로 딱 맞게 출력해야 합니다.

 

예를 들어 hp가 23인 보스몹을 잡으려면

장군개미 4마리(20), 병정개미 1마리(3)

마리의 개미들이 필요합니다.

그러므로 개미의 수는 5 가 답이 됩니다

 

 

 

let hp = 999;
var answer = 0;
    
if(hp%5 == 0){
    answer += Math.floor(hp/5);
}

보스몹의 hp가 랜덤으로 주어지니 999인 셈 치고 코딩해보겠습니다.

 

보스피가 5로 나눴을 때 나머지가 0으로 딱 떨어지면 데미지가 5인 장군개미로만 레이드는 끝납니다.

하지만 나머지가 1~4로 나왔을 때 병정개미, 일개미들이 일해야 하니 else if 문을 써봅시다!

 

 

 

let hp = 999;
var answer = 0;
    
if(hp%5 == 0){
    answer += Math.floor(hp/5);
} else if(hp%5 == 4 || hp%5 == 2 ){
    answer += Math.floor(hp/5) + 2;
} else if(hp%5 == 3 || hp%5 == 1){
    answer += Math.floor(hp/5) + 1;
}

//answer 201

바보같이 수작업으로 코딩을 했지만 답이 나오면 장땡입니다..

 

hp를 5로 나눴을 시 나머지가 4, 2일 경우 병정개미,일개미가1마리씩 투입되니 5나눈 몫에 2만 더해주면 됩니다.

 

나머지가 3 일 경우엔 병정개미 1마리, 1일 경우엔 일개미가 1마리 투입되니 5나눈 몫에 1만 더해주면 끝납니다~

 

그러므로 답은 장군개미 199마리, 병정개미 1마리, 일개미 1마리 이므로 답은 201마리!