JOY STIC JavaScript

6104 ワード

function solution(name) {
    
    let minMove = name.length-1
    
    for(let i = 1; i < name.length; i++) {
        
        if(name[i] == 'A') {
                let rightLeng = i+1;
            for(let j = i+1; j< name.length; j++) {
                    rightLeng = j
                    if(name[j] !== 'A') break;
            }
            
            let left = i-1;
            let right = name.length-rightLeng;
            
            minMove = Math.min(minMove, left > right ? left + right*2 : left*2 + right);
            
        i = rightLeng;
            
        } 
    }
    
    let alphabetMove = 0;
    for(let i = 0; i < name.length; i++) {
       let ascii = name[i].charCodeAt(0) - 'A'.charCodeAt(0);
       alphabetMove += ascii > 13 ? 26 - ascii : ascii
    }
    return alphabetMove + minMove
}
A値の個数と位置に応じてゲームレバーを最小の位置に移動する方法を知る必要があります.
私は他人の物語を見て、一定の理解と理解を持っていますが.
なんだか変な感じ...

リファレンス


https://after-newmoon.tistory.com/60