function solution(dots) {
var answer = 0;
if (gradient(dots[0],dots[1]) === gradient(dots[2],dots[3])) {
answer++;
}
if (gradient(dots[0],dots[2]) === gradient(dots[1],dots[3])) {
answer++;
}
if (gradient(dots[0],dots[3]) === gradient(dots[1],dots[2])) {
answer++;
}
return answer>0?1:0;
}
function gradient(a,b) {
return ((a[1]-b[1])/(a[0]-b[0]));
}
function solution(quiz) {
var answer = [];
let A = [];
let length = quiz.length;
for (let i=0;i<length;i++) {
A.push(quiz[i].split(' '));
}
for (let i=0;i<length;i++) {
let Ans = 0;
if (A[i][1] == "+") {
Ans = Number(A[i][0]) + Number(A[i][2]);
} else {
Ans = Number(A[i][0]) - Number(A[i][2]);
}
if (Number(A[i][4]) == Ans) {
answer.push("O");
} else {
answer.push("X");
}
}
return answer;
}
function solution(id_pw, db) {
var answer = '';
let cnt = 0;
for (let i=0;i<db.length;i++) {
if (db[i][0] == id_pw[0]) {
answer = 'wrong pw';
cnt++;
if (db[i][1] == id_pw[1]) {
answer = 'login';
break;
}
} else {
if (cnt == 0) {
answer = 'fail';
}
}
}
return answer;
}
function solution(balls, share) {
return factorial(balls) / (factorial(balls - share) * factorial(share));
}
function factorial(number) {
let Factorial = BigInt(1);
for (let i=1;i<=number;i++) {
Factorial = Factorial * BigInt(i);
}
return Factorial
}
원래 코드는
function solution(balls, share) { return factorial(balls) / (factorial(balls - share) * factorial(share)); ; } function factorial(number) { let Factorial = 1; for (let i=1;i<=number;i++) { Factorial = Factorial * i; } return Factorial }
로 짰었는데 제출 과정에서 계속 실패를 해 찾아보니, 소수점 오류라는 답이 나왔다. 그래서 BigInt로 값을 바꾸니 성공하였다.