我正在编写一个程序来添加两个罗马数字而不转换为任何基础.我有一切工作,但我不知道如何检查我的输入字符串是否是一个有效的罗马数字.
这些是检查有效性的规则:
- 不允许任何数字连续五行
- 在最多4次运行中允许一些数字.它们是I,X,C和M.其他(V,L,D)只能单独出现.
- 一些较低的数字可以在较高的数字之前,但仅在它们单独出现时才会出现.例如"IX"是好的,但"IIIX"不是.
- 但这仅适用于数字对.连续三个递增的数字无效.例如"IX"可以,但"IXC"不是.
- 始终允许没有运行的单个数字
我没有真正在这一步取得很大进展,也没有任何工作.任何帮助都会很棒!