๐ŸŽฒ ๋ฐฑ์ค€ 1700๋ฒˆ ๋ฉ€ํ‹ฐํƒญ ์Šค์ผ€์ค„๋ง

Jeongeunยท2023๋…„ 11์›” 4์ผ
0

๋ฐฑ์ค€

๋ชฉ๋ก ๋ณด๊ธฐ
129/187

๋ฐฑ์ค€ 1700๋ฒˆ

๐Ÿ’Š ์ฒ˜์Œ multitap ๋ฐฐ์—ด์— ๊ฐ’์„ ๋„ฃ์„ ๋•Œ, ๊ฐ™์€ ์ „๊ธฐ์šฉํ’ˆ์ด ์—ฐ์†์œผ๋กœ ์žˆ๋Š” ๊ฒฝ์šฐ๋ฅผ ์ƒ๊ฐํ•ด์•ผํ•œ๋‹ค.

์ฝ”๋“œ

const fs = require('fs'); 
let input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');
const [N, K] = input.shift().split(" ").map(Number);
input = input[0].split(" ").map(Number);
const multitap = [];

for (let i = 0; i < K; i++) {
  if (multitap.includes(input[i])) continue;
  multitap.push(input[i]);
  if (multitap.length === N) {
    input.splice(0, i+1);
    break;
  }
}
let count = 0;

for (let i = 0; i < input.length; i++) {
  if (multitap.includes(input[i])) continue;
  count++;
  const arr = input.slice(i + 1);
  let change = [-1, -1];
  for (let j = 0; j < multitap.length; j++) {
    const index = arr.indexOf(multitap[j]);
    if (index === -1) {
      multitap[j] = input[i];
      change = [-1, -1];
      break;
    } else {
      if (change[1] < index) change = [j, index];
    }
  }

  if (change[1] !== 101) multitap[change[0]] = input[i];
}


console.log(count);

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