この解答例はChatGPTによって生成されています,正しいかは自己判断で。

BFE.devでのAI解答例 - JavaScript コーディング問題
133. ローマ数字を整数に変換する

解答例:

function romanToInteger(str) {
  const ROMAN_NUMERALS = {
    I: 1,
    V: 5,
    X: 10,
    L: 50,
    C: 100,
    D: 500,
    M: 1000,
  };
  let result = 0;
  for (let i = 0; i < str.length; i++) {
    const current = ROMAN_NUMERALS[str[i]];
    const next = ROMAN_NUMERALS[str[i + 1]];
    if (next && current < next) {
      result += next - current;
      i++;
    } else {
      result += current;
    }
  }
  return result;
}

まず、ローマ数字を整数に変換するには、各文字に対応する数値を知る必要があります。ROMAN_NUMERALSオブジェクトを使って、各ローマ数字に対応する数値を格納します。次に、減算則を処理するために、各文字とその次の文字を比較し、次の文字がより大きい場合は、次の文字から現在の文字を引きます。ループを終了すると、アラビア数字に変換され、変換されたアラビア数字が返されます。