728x90
프로그래머스 문제 풀이 39
삼총사
01. 문제
ffunction solution(number) {
var answer = 0;
return answer;
}
02. 나의 문제 풀이
function solution(number) {
var answer = 0;
for(var i=0; i < number.length; i++){
for(var j=i+1; j<number.length; j++){
for(var k=j+1; k<number.length; k++){
if(number[i] + number[j] + number[k] === 0){
answer += 1;
}
}
}
}
return answer;
}
03. 다른 사람의 문제 풀이
function solution(number) {
let result = 0;
const combination = (current, start) => {
if (current.length === 3) {
result += current.reduce((acc, cur) => acc + cur, 0) === 0 ? 1 : 0;
return;
}
for (let i = start; i < number.length; i++) {
combination([...current, number[i]], i + 1);
}
}
combination([], 0);
return result;
}
// 서로 다른 사람 3명을 필요로하므로
// 조합 활용 => 3명이 존재 => 그 합을 구하여 0이면 count++;
// combination 함수 사용
combination : n개의 값 중에서 r 개의 숫자를 순서를 고려하지 않고 나열한 경우의 수 순열과는 순서를 고려하지 않는 다는 점이 다르다
728x90
'Javascript' 카테고리의 다른 글
프로그래머스 문제 풀이 41 (5) | 2022.12.06 |
---|---|
프로그래머스 문제 풀이 40 (1) | 2022.12.05 |
프로그래머스 문제 풀이 38 (1) | 2022.12.05 |
프로그래머스 문제 풀이 37 (1) | 2022.12.05 |
프로그래머스 문제 풀이 36 (1) | 2022.12.01 |
댓글