class Solution {
public:
    /**
     * 进制转换
     * @param M int整型 给定整数
     * @param N int整型 转换到的进制
     * @return string字符串
     */
    string solve(int M, int N) {
        string ret;
        bool flag = false; // false表示非负数
        if(M < 0) {
            flag = true;
            M = - M;
        }
        while(M) {
            int num = (M % N);
            char c;
            if (num >= 10) {
                switch (num) {
                    case 10 :  c = 'A';break;
                    case 11 : c = 'B'; break;
                    case 12 : c = 'C'; break;
                    case 13 : c = 'D'; break;
                    case 14 : c = 'E'; break;
                    case 15 : c = 'F'; break;
                        default: break;
                }
                
            }            
            if (num >= 10) {
                ret += c;
            } else {
                ret += to_string(M % N);
            }
            M = M / N;
        }
        if (flag) {
            ret += "-";
        }
        reverse(ret.begin(), ret.end());
        return ret;
    }
};