///////////////////////////////// No.423 ハムスター語初級(数詞) //入力文字読み取り var inputall = require('fs').readFileSync('/dev/stdin', 'utf8'); //すべて受け取り改行で区切って格納 //var input = inputall.split("\n"); var hamlanguage = inputall.split(""); //現代語の数字が入る var english = [] //ハム語を変換して配列に追加していく(hamu hamの違いは4番目の文字がuかどうかを判定) //変換が終わったハム語は除去していきハム語の配列が空になったら繰り返しの終了 while (true) { if (hamlanguage[0] == undefined) { break; } if (hamlanguage[3] == "u") { english.push(1) hamlanguage.splice(0, 4) } else { english.push(0) hamlanguage.splice(0, 3) } } var number = Number(english.join("")); //2進数を10進数へ変換 number = parseInt(number, 2); //10進数を2倍 number = number * 2; //10進数を2進数へ number = number.toString(2) //2進数をハム語へ //ハム語と現代語の配列を初期化 var hamlanguage = [] var english = []; var result =""; //一文字ずつ区切って格納 english = number.split(""); //ハム語に変換して追加していく for (var i = 0; i < english.length; i++) { if (english[i] == 1) { result +="hamu" } else { result += "ham" } } //配列を結合する console.log(result)