์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ/๋ฐฑ์ค€

[JavaScript ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ผ๊ณฑ ๋‚œ์Ÿ์ด ๋ฌธ์ œ ํ’€์ด

์šฉ๋‡ฝ 2021. 2. 24. 00:38
๋ฐ˜์‘ํ˜•

 

javascript ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋ฌธ์ œ ์—ฐ์Šต ์ผ๊ณฑ๋‚œ์Ÿ์ด

๐Ÿ“– ๋“ค์–ด๊ฐ€๋ฉฐ

๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์„ ํ•œ๋ฒˆ ๋” ์ •๋ฆฌํ•˜๊ณ  ๋ณต์Šตํ•˜๊ธฐ ์œ„ํ•ด ๊ธ€์„ ์ž‘์„ฑํ•ด๋ณธ๋‹ค.

โ“ ๋ฌธ์ œ

์ผ๊ณฑ ๋‚œ์Ÿ์ด

์™•๋น„๋ฅผ ํ”ผํ•ด ์ผ๊ณฑ ๋‚œ์Ÿ์ด๋“ค๊ณผ ํ•จ๊ป˜ ํ‰ํ™”๋กญ๊ฒŒ ์ƒํ™œํ•˜๊ณ  ์žˆ๋˜ ๋ฐฑ์„ค๊ณต์ฃผ์—๊ฒŒ ์œ„๊ธฐ๊ฐ€ ์ฐพ์•„์™”๋‹ค. 
์ผ๊ณผ๋ฅผ ๋งˆ์น˜๊ณ  ๋Œ์•„์˜จ ๋‚œ์Ÿ์ด๊ฐ€ ์ผ๊ณฑ ๋ช…์ด ์•„๋‹Œ ์•„ํ™‰ ๋ช…์ด์—ˆ๋˜ ๊ฒƒ์ด๋‹ค.
์•„ํ™‰ ๋ช…์˜ ๋‚œ์Ÿ์ด๋Š” ๋ชจ๋‘ ์ž์‹ ์ด "๋ฐฑ์„ค ๊ณต์ฃผ์™€ ์ผ๊ณฑ ๋‚œ์Ÿ์ด"์˜ ์ฃผ์ธ๊ณต์ด๋ผ๊ณ  ์ฃผ์žฅํ–ˆ๋‹ค. ๋›ฐ์–ด๋‚œ 
์ˆ˜ํ•™์  ์ง๊ด€๋ ฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋˜ ๋ฐฑ์„ค๊ณต์ฃผ๋Š”, ๋‹คํ–‰์Šค๋Ÿฝ๊ฒŒ๋„ ์ผ๊ณฑ ๋‚œ์Ÿ์ด์˜ ํ‚ค์˜ ํ•ฉ์ด 100์ด ๋จ์„ 
๊ธฐ์–ตํ•ด ๋ƒˆ๋‹ค.
์•„ํ™‰ ๋‚œ์Ÿ์ด์˜ ํ‚ค๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๋ฐฑ์„ค๊ณต์ฃผ๋ฅผ ๋„์™€ ์ผ๊ณฑ ๋‚œ์Ÿ์ด๋ฅผ ์ฐพ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ
์˜ค.

(๋ฌธ์ œ ์ถœ์ฒ˜ : ํ•œ๊ตญ์ •๋ณด์˜ฌ๋ฆผํ”ผ์•„๋“œ)

 

์ž…๋ ฅ

์•„ํ™‰ ๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ์ผ๊ณฑ ๋‚œ์Ÿ์ด์˜ ํ‚ค๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ฃผ์–ด์ง€๋Š” ํ‚ค๋Š” 100์„ ๋„˜์ง€ ์•Š๋Š” ์ž์—ฐ์ˆ˜์ด๋ฉฐ, ์•„ํ™‰ ๋‚œ์Ÿ์ด์˜ ํ‚ค๋Š” ๋ชจ๋‘ ๋‹ค๋ฅด๋ฉฐ, ๊ฐ€๋Šฅํ•œ ์ •๋‹ต์ด ์—ฌ๋Ÿฌ ๊ฐ€์ง€์ธ ๊ฒฝ์šฐ์—๋Š” ์•„๋ฌด๊ฑฐ๋‚˜ ์ถœ๋ ฅํ•œ๋‹ค.

์ถœ๋ ฅ

์ผ๊ณฑ ๋‚œ์Ÿ์ด์˜ ํ‚ค๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ถœ๋ ฅํ•œ๋‹ค.

์˜ˆ์ œ ์ž…๋ ฅ

20 7 23 19 10 15 25 8 13

์ถœ๋ ฅ ์˜ˆ์ œ

7 8 10 13 19 20 23

๐Ÿ’ก ํ’€์ด

๋ฐ˜์‘ํ˜•
const fs = require('fs');
const file = process.platform === 'linux' ? '/dev/stdin' : './input.txt';
const input = fs.readFileSync(file).toString().trim().split('\n');

const arr = input.map(Number).sort((a, b) => a - b);
const total = arr.reduce((acc, curr) => acc + curr, 0);
const selected = [];
let find = false;
for (let i = 0; i < arr.length; i++) {
  if (find) {
    break;
  }
  for (let j = i + 1; j < arr.length; j++) {
    const sum = arr[i] + arr[j];

    if (total - sum === 100) {
      selected.push(arr[i]);
      selected.push(arr[j]);
      find = true;
      break;
    }
  }
}

const answer = [];

for (const x of arr) {
  if (!selected.includes(x)) {
    answer.push(x);
  }
}

console.log(answer.join('\n'));

 

๋ฐ˜์‘ํ˜•