1. 程式人生 > >計蒜客————整數轉換成羅馬數字

計蒜客————整數轉換成羅馬數字

給定一個整數 numnumnum,將整數轉換成羅馬數字。

1,2,3,4,51,2,3,4,51,2,3,4,5 對應的羅馬數字分別為IIIIIIIVV等,更詳細的說明見此 連結

輸入格式

第一行輸入一個整數 num(1≤num≤3999)num(1 \leq num \leq 3999)num(1num3999)

輸出格式

輸出 numnumnum 對應的羅馬數字。

樣例輸入

123

樣例輸出

CXXIII

每次只處理一位數。

#include <iostream>
#include <deque>
#include <cstring>
#include <algorithm>
#include <stdio.h>
using namespace std;
int main()
{
    string com[4][10]= {{" ","I","II","III","IV","V","VI","VII","VIII","IX"},{" ","X","XX","XXX","XL","L","LX","LXX","LXXX","XC"},{" ","C","CC","CCC","CD","D","DC","DCC","DCCC","CM"},{" ","M","MM","MMM"},};
    int n;
    while(cin>>n!=NULL)
    {
        char s[10];
        sprintf(s,"%d",n);
        int len=strlen(s);
        for(int i=0; i<len; i++)
            cout<<com[len-i-1][s[i]-48];
        cout<<endl;
    }
    return 0;
}