LeetCode紀錄-整數轉羅馬數字

LeetCode紀錄

題目:https://leetcode.cn/problems/integer-to-roman/description/

解題思路:貪心算法

using System.Text;

class Program
{
    //將常規及特殊規則都放進陣列裡
    int[] values = { 1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1 };
    string[] strs = { "M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I" };

    public string IntToRoman(int num)
    {
        StringBuilder result = new StringBuilder();
        while (num > 0)
        {
            int index = Array.FindIndex(values, value => num >= value);
            result.Append(strs[index]);
            num -= values[index];
        }
        return result.ToString();
    }
}