classSolution{public:stringintToRoman(intnum){// Note: The Solution object is instantiated only once and is reused by each test case.
charschar[10];intindex=0;intcount;if(num/1000!=0){count=num/1000;num=num%1000;for(inti=0;i<count;i++){schar[index++]='M';}}if(num/100!=0){count=num/100;num=num%100;switch(count){case1:schar[index++]='C';break;case2:schar[index++]='C';schar[index++]='C';break;case3:schar[index++]='C';schar[index++]='C';schar[index++]='C';break;case4:schar[index++]='C';schar[index++]='D';break;case5:schar[index++]='D';break;case6:schar[index++]='D';schar[index++]='C';break;case7:schar[index++]='D';schar[index++]='C';schar[index++]='C';break;case8:schar[index++]='D';schar[index++]='C';schar[index++]='C';schar[index++]='C';break;case9:schar[index++]='C';schar[index++]='M';break;}}if(num/10!=0){count=num/10;num=num%10;switch(count){case1:schar[index++]='X';break;case2:schar[index++]='X';schar[index++]='X';break;case3:schar[index++]='X';schar[index++]='X';schar[index++]='X';break;case4:schar[index++]='X';schar[index++]='L';break;case5:schar[index++]='L';break;case6:schar[index++]='L';schar[index++]='X';break;case7:schar[index++]='L';schar[index++]='X';schar[index++]='X';break;case8:schar[index++]='L';schar[index++]='X';schar[index++]='X';schar[index++]='X';break;case9:schar[index++]='X';schar[index++]='C';break;}}if(num!=0){count=num;switch(count){case1:schar[index++]='I';break;case2:schar[index++]='I';schar[index++]='I';break;case3:schar[index++]='I';schar[index++]='I';schar[index++]='I';break;case4:schar[index++]='I';schar[index++]='V';break;case5:schar[index++]='V';break;case6:schar[index++]='V';schar[index++]='I';break;case7:schar[index++]='V';schar[index++]='I';schar[index++]='I';break;case8:schar[index++]='V';schar[index++]='I';schar[index++]='I';schar[index++]='I';break;case9:schar[index++]='I';schar[index++]='X';break;default:break;}}schar[index]='\0';strings=schar;returns;}};