저장을 습관화
프로그래머스 LV.0 개미 군단 본문
프로그래머스 LV.0 개미 군단
https://school.programmers.co.kr/learn/courses/30/lessons/120837
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
1. 문제 명
개미 군단
2. 문제 설명
개미 군단이 사냥을 나가려고 합니다. 개미군단은 사냥감의 체력에 딱 맞는 병력을 데리고 나가려고 합니다. 장군개미는 5의 공격력을, 병정개미는 3의 공격력을 일개미는 1의 공격력을 가지고 있습니다. 예를 들어 체력 23의 여치를 사냥하려고 할 때, 일개미 23마리를 데리고 가도 되지만, 장군개미 네 마리와 병정개미 한 마리를 데리고 간다면 더 적은 병력으로 사냥할 수 있습니다. 사냥감의 체력 hp가 매개변수로 주어질 때, 사냥감의 체력에 딱 맞게 최소한의 병력을 구성하려면 몇 마리의 개미가 필요한지를 return하도록 solution 함수를 완성해주세요.
3. 제한 사항
- hp는 자연수입니다.
- 0 ≤ hp ≤ 1000
4. 예시
hp | result |
23 | 5 |
24 | 6 |
999 | 201 |
5. 기본 제공 코드
function solution(hp) {
var answer = 0;
return answer;
}
6. 제출한 내 답
const solution = (hp) => {
let count = 0;
if (hp >= 5) {
count += ~~(hp / 5);
hp = hp % 5;
}
if (hp >= 3) {
count += ~~(hp / 3);
hp = hp % 3;
}
if (hp >= 1) {
count += hp;
}
return count;
};
6-2. VSC에 작성한 내용
const solution = (hp) => {
// 장군 5, 병정 3, 일꾼 1
let count = 0;
if (hp >= 5) {
count += ~~(hp / 5);
hp = hp % 5;
// console.log(hp);
// console.log(count);
}
if (hp >= 3) {
count += ~~(hp / 3);
hp = hp % 3;
// console.log(hp);
// console.log(count);
}
if (hp >= 1) {
count += hp;
// console.log(hp);
// console.log(count);
}
return count;
};
// 테스트
console.log(solution(23));
console.log(solution(24));
console.log(solution(999));
7. 특이사항
좀 간단하게 적고 싶었는데 생각보다 잘 안되더라
8. 다른 사람이 작성한 답
8-1.
function solution(hp) {
return Math.floor(hp/5)+Math.floor((hp%5)/3)+(hp%5)%3;
}
8-2.
function solution(hp) {
const 장군개미 = Math.floor(hp / 5);
const 병정개미 = Math.floor((hp - (장군개미 * 5)) / 3);
const 일개미 = hp - ((장군개미 * 5) + (병정개미 * 3));
return 장군개미+병정개미+일개미;
}
8-3.
function solution(hp) {
return parseInt(hp/5) + parseInt((hp%5)/3) + parseInt((hp%5)%3)
}
나 수학 진짜 못하는구나..
'코딩 테스트 > 프로그래머스 - 자바스크립트' 카테고리의 다른 글
프로그래머스 LV.0 순서 바꾸기 (0) | 2023.09.17 |
---|---|
프로그래머스 LV.0 대문자와 소문자 (0) | 2023.09.17 |
프로그래머스 LV.0 l로 만들기 (0) | 2023.09.17 |
프로그래머스 LV.0 원하는 문자열 찾기 (0) | 2023.09.16 |
프로그래머스 LV.0 가위 바위 보 (0) | 2023.09.16 |