Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
167972 | C班詹皓杰 | K进制数转L进制数 | C++ | 解答错误 | 60 | 0 MS | 248 KB | 630 | 2024-08-19 21:33:25 |
#include<iostream> #include<iomanip> #include<algorithm> using namespace std; string change(string n,int from,int to){ int d = 0; for(char c : n){ d = d*from+(c>='0'&&c<='9' ? c-'0' : c-'A'+10); } if(d == 0){ return "0"; } string r; while(d){ int t = d%to; if(t < 10){ r.push_back('0'+t); }else{ r.push_back('A'+t-10); } d /= to; } reverse(r.begin(),r.end()); return r; } int main(){ int k,n,l; for(; cin>>k>>n>>l; cout<<change(to_string(n),k,l)<<'\n'); return 0; }