<문제 설명>
제한사항
입출력 예nresult
입출력 예 설명
약수의 개수가 세 개 이상인 수를 합성수라고 합니다. 자연수 n이 매개변수로 주어질 때 n이하의 합성수의 개수를 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ n ≤ 100
입출력 예nresult
10 | 5 |
15 | 8 |
입출력 예 설명
입출력 예 #1
- 10 이하 합성수는 4, 6, 8, 9, 10 로 5개입니다. 따라서 5를 return합니다.
입출력 예 #1
- 15 이하 합성수는 4, 6, 8, 9, 10, 12, 14, 15 로 8개입니다. 따라서 8을 return합니다.
<제출 답안>
function solution(n) {
let sum = 0;
for(let j=4; j<=n; j++){
Array(j).fill(0).map((x,i)=> (j/(i+1))).filter(x =>
Number.isInteger(x)).length >= 3? sum++ : sum
}
return sum
}
<광기어린 다른 누군가의 답안>
function solution(n) {
if (n === 1) return 0;
if (n === 2) return 0;
if (n === 3) return 0;
if (n === 4) return 1;
if (n === 5) return 1;
if (n === 6) return 2;
if (n === 7) return 2;
if (n === 8) return 3;
if (n === 9) return 4;
if (n === 10) return 5;
if (n === 11) return 5;
if (n === 12) return 6;
if (n === 13) return 6;
if (n === 14) return 7;
if (n === 15) return 8;
if (n === 16) return 9;
if (n === 17) return 9;
if (n === 18) return 10;
if (n === 19) return 10;
if (n === 20) return 11;
if (n === 21) return 12;
if (n === 22) return 13;
if (n === 23) return 13;
if (n === 24) return 14;
if (n === 25) return 15;
if (n === 26) return 16;
if (n === 27) return 17;
if (n === 28) return 18;
if (n === 29) return 18;
if (n === 30) return 19;
if (n === 31) return 19;
if (n === 32) return 20;
if (n === 33) return 21;
if (n === 34) return 22;
if (n === 35) return 23;
if (n === 36) return 24;
if (n === 37) return 24;
if (n === 38) return 25;
if (n === 39) return 26;
if (n === 40) return 27;
if (n === 41) return 27;
if (n === 42) return 28;
if (n === 43) return 28;
if (n === 44) return 29;
if (n === 45) return 30;
if (n === 46) return 31;
if (n === 47) return 31;
if (n === 48) return 32;
if (n === 49) return 33;
if (n === 50) return 34;
if (n === 51) return 35;
if (n === 52) return 36;
if (n === 53) return 36;
if (n === 54) return 37;
if (n === 55) return 38;
if (n === 56) return 39;
if (n === 57) return 40;
if (n === 58) return 41;
if (n === 59) return 41;
if (n === 60) return 42;
if (n === 61) return 42;
if (n === 62) return 43;
if (n === 63) return 44;
if (n === 64) return 45;
if (n === 65) return 46;
if (n === 66) return 47;
if (n === 67) return 47;
if (n === 68) return 48;
if (n === 69) return 49;
if (n === 70) return 50;
if (n === 71) return 50;
if (n === 72) return 51;
if (n === 73) return 51;
if (n === 74) return 52;
if (n === 75) return 53;
if (n === 76) return 54;
if (n === 77) return 55;
if (n === 78) return 56;
if (n === 79) return 56;
if (n === 80) return 57;
if (n === 81) return 58;
if (n === 82) return 59;
if (n === 83) return 59;
if (n === 84) return 60;
if (n === 85) return 61;
if (n === 86) return 62;
if (n === 87) return 63;
if (n === 88) return 64;
if (n === 89) return 64;
if (n === 90) return 65;
if (n === 91) return 66;
if (n === 92) return 67;
if (n === 93) return 68;
if (n === 94) return 69;
if (n === 95) return 70;
if (n === 96) return 71;
if (n === 97) return 71;
if (n === 98) return 72;
if (n === 99) return 73;
if (n === 100) return 74;
return undefined;
}
'🗃️javascript > 프로그래머스' 카테고리의 다른 글
콜라츠 추측(Lv.1)[반복문의 한계가 미정일 땐 while문] (0) | 2023.01.06 |
---|---|
중복된 문자 제거(Lv.0)[set()출력방법 및 set의 추가기능들] (0) | 2023.01.06 |
제일 작은 수 제거하기(Lv.1)[splice(),slice(), 최솟값 Math.min(..str)] (0) | 2023.01.06 |
나누어 떨어지는 숫자 배열(Lv.1)[배열에 추가조건 붙이기, 빈배열 확인] (0) | 2023.01.06 |
핸드폰 번호 가리기(Lv.1)[slice(음수) 맨뒤에서부터 썰어옴.] (0) | 2023.01.06 |