package q12 import "strings" var mapping = []struct { string int }{ {"I", 1}, {"IV", 4}, {"V", 5}, {"IX", 9}, {"X", 10}, {"XL", 40}, {"L", 50}, {"XC", 90}, {"C", 100}, {"CD", 400}, {"D", 500}, {"CM", 900}, {"M", 1000}, } func intToRoman(num int) string { b := &strings.Builder{} for i := len(mapping) - 1; i >= 0; i-- { for num >= mapping[i].int { num -= mapping[i].int b.WriteString(mapping[i].string) } if num == 0 { break } } return b.String() } var _ = intToRoman