Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
150175 Microsoft K进制数转L进制数 C++ 解答错误 0 0 MS 252 KB 851 2024-06-01 16:15:14

Tests(0/5):


#include <iostream> #include <string> using namespace std; int charToInt(char c) { if (isdigit(c)) { return c - '0'; } else { return c - 'A' + 10; } } char intToChar(int n) { if (n < 10) { return '0' + n; } else { return 'A' + n - 10; } } string kToL(string num, int k, int l) { int decimal = 0; for (int i = 0; i < num.size(); i++) { decimal = decimal * k + charToInt(num[i]); } string result = ""; do { result = intToChar(decimal % l) + result; decimal /= l; } while (decimal != 0); return result; } int main() { string num; int k, l; cin >> num; cin >> k >> l; cout << num << "(" << k << ") = " << kToL(num, k, l) << "(" << l << ")" << endl; return 0; }


测评信息: