๐ŸŽฒ ๋ฐฑ์ค€ 7453๋ฒˆ ํ•ฉ์ด 0์ธ ๋„ค ์ •์ˆ˜

Jeongeunยท2024๋…„ 3์›” 9์ผ
0

๋ฐฑ์ค€

๋ชฉ๋ก ๋ณด๊ธฐ
179/186

๐Ÿ“ฃ ๋ฌธ์ œ

๐Ÿ’Š ์ฒ˜์Œ์— ์ฐธ๊ณ ํ•œ ๋‹ต์€ ํˆฌํฌ์ธํ„ฐ ๋ฐฉ์‹์ด์—ˆ๋Š”๋ฐ ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. javascript๋Š” Map์œผ๋กœ ํ’€์–ด์ค˜์•ผํ•˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค.
๐ŸŽจ ์ฐธ๊ณ  ์ฝ”๋“œ

์ฝ”๋“œ

const fs = require('fs'); 
const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');
const N = +input.shift();
const A = new Array(N);
const B = new Array(N);
const C = new Array(N);
const D = new Array(N);
const AB = [];
const CD = new Map();

for (let i = 0; i < N; i++) {
  const [a, b, c, d] = input[i].split(" ").map(Number);
  A[i] = a;
  B[i] = b;
  C[i] = c;
  D[i] = d;
}

for (let i = 0; i < N; i++) {
  for (let j = 0; j < N; j++) {
    AB.push(A[i] + B[j]);
    let cd = C[i] + D[j];
    if (CD.has(cd)) CD.set(cd, CD.get(cd) + 1);
    else CD.set(cd, 1);
  }
}

let count = 0;
for (let i = 0; i < AB.length; i++) {
  let cd = AB[i] * -1;
  if (CD.has(cd)) count += CD.get(cd);
}

console.log(count);

0๊ฐœ์˜ ๋Œ“๊ธ€