๋ฐฑ์ค€[JS] > 1021๋ฒˆ ํšŒ์ „ํ•˜๋Š” ํ

2024. 10. 30. 21:42ยท๐Ÿ”’Algorithm

๐Ÿ”ฅ๋ฌธ์ œ๋งํฌ

https://www.acmicpc.net/problem/1021

๐Ÿ”ฅํ’€์ด

์ฒ˜์Œ์—๋Š” ์—ฐ์‚ฐํšŸ์ˆ˜๋ฅผ ๊ณ ๋ คํ•ด์„œ arr์˜ ๋ฐฐ์—ด์›์†Œ์˜ shift๋ฅผ ํ•˜์ง€์•Š๊ณ  ํ‘ธ๋Š” ์ค„ ์•Œ์•˜๋Š”๋ฐ ๊ตณ์ด ๊ทธ๋Ÿฌ์ง€ ์•Š๊ณ  ๊ทธ๋ƒฅ shift์™€ push๋ฅผ ์ด์šฉํ•˜๋ฉด ์‰ฝ๊ฒŒ ํ’€์ˆ˜ ์žˆ๋‹ค.

const fs = require("fs");
const input = fs.readFileSync("/dev/stdin").toString().split("\n");

const arr = input[1].split(" ").map((t) => Number(t));
const [n, m] = input[0].split(" ").map((t)=>Number(t));

let dic = [];
for (let i = 1; i <= n; ++i) {
    dic.push(i);
}


const f1 = () => {
    dic.shift();
};
const f2 = () => {
    let v = dic.shift();
    dic.push(v);
};
const f3 = () => {
    let v = dic.pop();
    dic.unshift(v);
};

let answer =0

for (let i = 0; i < arr.length; ++i) {
    let target = arr[i];

    if (dic[0] === target) {
        f1();
    } else {
        let index = dic.indexOf(target)
        let flag = dic.length/2
        
        
        if (index < flag) {
            while(dic[0]!==target){
                f2();
                answer+=1;
            }
        } else {
            while(dic[0]!==target){
                f3();
                answer+=1;
            }
        }
        f1();
    }
}
console.log(answer);

'๐Ÿ”’Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

๋ฐฑ์ค€[JS] > 1058๋ฒˆ ์นœ๊ตฌ  (0) 2024.10.31
๋ฐฑ์ค€[JS] > 1051๋ฒˆ ์ˆซ์ž ์ •์‚ฌ๊ฐํ˜•  (0) 2024.10.31
๋ฐฑ์ค€[JS] > 1074๋ฒˆ Z  (0) 2024.10.28
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค[JS] > [PCCP ๊ธฐ์ถœ๋ฌธ์ œ] 2๋ฒˆ / ํผ์ฆ ๊ฒŒ์ž„ ์ฑŒ๋ฆฐ์ง€  (1) 2024.09.11
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค[JS] > [PCCP ๊ธฐ์ถœ๋ฌธ์ œ] 3๋ฒˆ / ์ถฉ๋Œ์œ„ํ—˜ ์ฐพ๊ธฐ  (0) 2024.09.11
'๐Ÿ”’Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • ๋ฐฑ์ค€[JS] > 1058๋ฒˆ ์นœ๊ตฌ
  • ๋ฐฑ์ค€[JS] > 1051๋ฒˆ ์ˆซ์ž ์ •์‚ฌ๊ฐํ˜•
  • ๋ฐฑ์ค€[JS] > 1074๋ฒˆ Z
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค[JS] > [PCCP ๊ธฐ์ถœ๋ฌธ์ œ] 2๋ฒˆ / ํผ์ฆ ๊ฒŒ์ž„ ์ฑŒ๋ฆฐ์ง€
devWarrior
devWarrior
  • devWarrior
    devWarrior
    devWarrior
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๐ŸงฉDev (263)
      • โญFE (34)
      • ๐Ÿ”’Algorithm (155)
      • โž•Etc. (11)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
    • ๊ธ€์“ฐ๊ธฐ
    • ๊ด€๋ฆฌ
  • ๋งํฌ

  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ํ‹ฐ์Šคํ† ๋ฆฌ์ฑŒ๋ฆฐ์ง€
    ์‹ค๋ฒ„1
    ๊ตฌํ˜„
    leetcode
    ์˜ค๋ธ”์™„
    js
    ์‹ค๋ฒ„2
    ์ž์Šค
    ํ”„๋ก ํŠธ์—”๋“œ
    nodejs
    DFS
    BFS
    FE
    Easy
    ๊ทธ๋ฆฌ๋””
    ์‹ค๋ฒ„4
    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ
    ์•Œ๊ณ ๋ฆฌ์ฆ˜
    Algorithm
    ๋ฐฑ์ค€
    ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
    ๊ณจ๋“œ5
    ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
    Lv2
    javascript
    react
    ์ฝ”ํ…Œ
    ์‹ค๋ฒ„3
    node.js
    dp
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
devWarrior
๋ฐฑ์ค€[JS] > 1021๋ฒˆ ํšŒ์ „ํ•˜๋Š” ํ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”