#include <bits/stdc++.h>
using namespace std;
string a[13] = {"M",  "CM", "D",  "CD", "C",  "XC", "L",
                "XL", "X",  "IX", "V",  "IV", "I"};
int v[13] = {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1};
string val[3005];
string toR(int x) {
  string res = "";
  for (int i = 0; i < 13; ++i) {
    while (x >= v[i]) {
      x -= v[i];
      res += a[i];
    }
  }
  return res;
}
void init() {
  for (int i = 1; i <= 3000; ++i) {
    val[i] = toR(i);
  }
}
int toNum(char cv) {
  if (cv >= '0' && cv <= '9') {
    return cv - '0';
  } else {
    return cv - 'A' + 10;
  }
}
char toChar(int x) {
  if (x >= 10) {
    return 'A' + x - 10;
  } else {
    return '0' + x;
  }
}
char c[2000], B[10];
int main() {
  int A = 0;
  init();
  scanf("%d%s", &A, B);
  scanf("%s", c);
  long long v = 0;
  for (int i = 0; c[i]; ++i) {
    v = A * v + toNum(c[i]);
  }
  if (B[0] == 'R') {
    printf("%s", val[v].c_str());
  } else {
    char res[2000];
    int rn = 0, base = 0;
    base = atoi(B);
    if (v == 0) {
      res[rn++] = 0;
    } else {
      while (v > 0) {
        res[rn++] = v % base;
        v /= base;
      }
    }
    while (rn-- > 0) {
      printf("%c", toChar(res[rn]));
    }
  }
  return 0;
}
