function solution(name) {
  let answer = 0;
  const length = name.length;

  let unicodeA = 65;
  let unicodeZ = 90;

  for (let i in name) {
    let unicodeAlphabet = Math.abs(unicodeA - name[i].charCodeAt(0)) > 13
    ? Math.abs(unicodeZ - name[i].charCodeAt(0)) + 1
      : Math.abs(unicodeA - name[i].charCodeAt(0));
    answer += unicodeAlphabet;
  }

  let move = length - 1;

  for (let i = 0; i < length; i++) {
    let nextIdx = i + 1
    while (nextIdx < length && name[nextIdx] === 'A') {
      nextIdx++;
    }
    let distance = Math.min(i, length - nextIdx);
    move = Math.min(move, i + length - nextIdx + distance);
  }

  answer += move;
  return answer;
}

console.log('hh', solution('JAN'));

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๊ทธ๋ฆฌ๋”” ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋ฌธ์ œ ์ค‘ ์กฐ์ด์Šคํ‹ฑ ๋ฌธ์ œ์ด๋‹ค. ๊ฐ€์žฅ ์ฐพ๊ธฐ ์–ด๋ ค์› ๋˜ ํฌ์ธํŠธ๋Š” unicodeAlphabet ์„ ๊ตฌํ•˜๋Š” ๊ฒƒ์ธ๋ฐ, ๊ธฐ์กด์—๋Š” 13 ์ด๋ผ๋Š” ์ƒ์ˆ˜๋ฅผ ์“ฐ์ง€ ์•Š๊ณ  ์–ด๋–ป๊ฒŒ๋“  ๊ณ„์‚ฐ์‹์„ ๋งŒ๋“ค์–ด๋ณด๋ ค๊ณ  ํ–ˆ์œผ๋‚˜, A-Z ๋กœ ์ด๋™ํ•˜๋Š” ๊ฒƒ๊นŒ์ง€ ๊ฐ์•ˆํ•ด์•ผํ•˜๋Š” ๊ฒƒ๊ณผ ๋‹จ์ˆœ unicode ๋ฅผ ๊ตฌํ•  ๊ฒฝ์šฐ 1์˜ ์˜ค์ฐจ๊ฐ€ ์ƒ๊ธฐ๋Š” ์˜ˆ์™ธ๋“ค์„ ์ฒ˜๋ฆฌํ•˜์ง€ ๋ชปํ–ˆ๋‹ค.

13๋ฒˆ์งธ ์•ŒํŒŒ๋ฒณ์ธ โ€˜Oโ€™ ๋ถ€ํ„ฐ๋Š” Z์—์„œ ์ถœ๋ฐœํ•˜๋Š” ๊ฒƒ์ด ๋” ์ด๋“์ด๋‹ค. ์•ŒํŒŒ๋ฒณ๊ณผ ๊ฐ™์ด ๊ฐœ์ˆ˜๊ฐ€ ํ•œ์ •๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ƒ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‰ฝ๊ฒŒ ํ’€ ์ˆ˜ ์žˆ๋‹ค.