import java.io.*;
import java.util.*;
class Ideone
{
/**
Convert decimal number lying between 1-3999 to roman numerals
SYMBOL VALUE
I 1
II 2
III 3
IV 4
V 5
X 10
L 50
C 100
D 500
M 1000
299 - CCXCIX
**/
private static String roman
(int n
) { HashMap
<Integer, String
> mp
= new HashMap
<>(); mp.put(1, "I");
mp.put(2, "II");
mp.put(3, "III");
mp.put(4, "IV");
mp.put(5, "V");
mp.put(9, "IX");
mp.put(10, "X");
mp.put(40, "XL");
mp.put(50, "L");
mp.put(90, "XC");
mp.put(100, "C");
mp.put(400, "CD");
mp.put(500, "D");
mp.put(900, "CM");
mp.put(1000, "M");
int[] val = new int[]{1000,900, 500,400, 100,90, 50,40, 10,9 , 5, 4, 3, 2, 1};
StringBuilder sb = new StringBuilder();
for(int i=0;i<val.length;i++) {
while(n>=val[i]) {
n-=val[i];
sb.append(mp.get(val[i]));
}
}
return sb.toString();
}
{
Scanner in
= new Scanner
(System.
in); int n = in.nextInt();
}
}
aW1wb3J0IGphdmEuaW8uKjsKaW1wb3J0IGphdmEudXRpbC4qOwoKY2xhc3MgSWRlb25lCnsKCS8qKgoJQ29udmVydCBkZWNpbWFsIG51bWJlciBseWluZyBiZXR3ZWVuIDEtMzk5OSB0byByb21hbiBudW1lcmFscwoJCglTWU1CT0wgICAgICAgVkFMVUUKCUkgICAgICAgICAgICAgMQoJSUkJCQkgIDIKCUlJSQkJCSAgMwoJSVYgICAgICAgICAgICA0CglWICAgICAgICAgICAgIDUKCVggICAgICAgICAgICAgMTAKCUwgICAgICAgICAgICAgNTAKCUMgICAgICAgICAgICAgMTAwCglEICAgICAgICAgICAgIDUwMAoJTSAgICAgICAgICAgICAxMDAwICAgICAKCQoJMjk5IC0gQ0NYQ0lYCgkKCQoJKiovCglwcml2YXRlIHN0YXRpYyBTdHJpbmcgcm9tYW4oaW50IG4pIHsKCQlIYXNoTWFwPEludGVnZXIsIFN0cmluZz4gbXAgPSBuZXcgSGFzaE1hcDw+KCk7CgkJbXAucHV0KDEsICJJIik7CgkJbXAucHV0KDIsICJJSSIpOwoJCW1wLnB1dCgzLCAiSUlJIik7CgkJbXAucHV0KDQsICJJViIpOwoJCW1wLnB1dCg1LCAiViIpOwoJCW1wLnB1dCg5LCAiSVgiKTsKCQltcC5wdXQoMTAsICJYIik7CgkJbXAucHV0KDQwLCAiWEwiKTsKCQltcC5wdXQoNTAsICJMIik7CgkJbXAucHV0KDkwLCAiWEMiKTsKCQltcC5wdXQoMTAwLCAiQyIpOwoJCW1wLnB1dCg0MDAsICJDRCIpOwoJCW1wLnB1dCg1MDAsICJEIik7CgkJbXAucHV0KDkwMCwgIkNNIik7CgkJbXAucHV0KDEwMDAsICJNIik7CgkJCgkJaW50W10gdmFsID0gbmV3IGludFtdezEwMDAsOTAwLCA1MDAsNDAwLCAxMDAsOTAsIDUwLDQwLCAxMCw5ICwgNSwgNCwgMywgMiwgMX07CgkJCgkJU3RyaW5nQnVpbGRlciBzYiA9IG5ldyBTdHJpbmdCdWlsZGVyKCk7CgkJZm9yKGludCBpPTA7aTx2YWwubGVuZ3RoO2krKykgewoJCQl3aGlsZShuPj12YWxbaV0pIHsKCQkJCW4tPXZhbFtpXTsKCQkJCXNiLmFwcGVuZChtcC5nZXQodmFsW2ldKSk7CgkJCX0KCQl9CiAJCQoJCXJldHVybiBzYi50b1N0cmluZygpOwoJfQoJCglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCVNjYW5uZXIgaW4gPSBuZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwogICAgCWludCBuID0gaW4ubmV4dEludCgpOwoJCVN5c3RlbS5vdXQucHJpbnRsbihyb21hbihuKSk7Cgl9Cn0=