๊ฐ์ธ๊ณต๋ถ/Algorithm
[๋ฐฑ์ค][Node.js] 9613๋ฒ : GCD ํฉ
๐๋ฐ๋ด๋ด๐
2021. 12. 28. 23:35
Algorithm
- GCD ํฉ -
๋ฌธ์
์์ ์ ์ n๊ฐ๊ฐ ์ฃผ์ด์ก์ ๋, ๊ฐ๋ฅํ ๋ชจ๋ ์์ GCD์ ํฉ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ์ถ๋ ฅ ์์
๋ฌธ์ ํ๊ธฐ
const readline = require("readline");
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
let input = [];
rl.on("line", function (line) {
input.push(
line
.toString()
.split(" ")
.map((el) => +el)
);
}).on("close", function () {
input.shift();
let result = [];
for (let i = 0; i < input.length; i++) {
result.push(findValue(input[i][0], input[i].splice(1)));
}
console.log(result.join("\n"));
process.exit();
});
let findValue = (a, b) => {
let sum = 0;
for (let i = 0; i < a - 1; i++) {
for (let j = i + 1; j < a; j++) {
sum += gcd(b[i], b[j]);
}
}
return sum;
};
let gcd = (x, y) => {
while (y) {
[x, y] = [y, x % y];
}
return x;
};
๋ฐ์ํ