Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
169900 Wilbur K进制数转L进制数 C++ 通过 100 1 MS 256 KB 1071 2024-08-20 19:52:47

Tests(5/5):


#include <iostream> #include <algorithm> #include <string> #include <cmath> using namespace std; long long toTen(string str, int n) { long long a=0; for (int i = 0; i < str.size(); i++){ a*=n; if(str[i]>='0'&&str[i]<='9') a+=str[i]-'0'; if(str[i]>='a'&&str[i]<='z') a+=str[i]-'a'+10; if(str[i]>='A'&&str[i]<='Z') a+=str[i]-'A'+10; } return a; } string toJZ(long long data, int n){ char str[100]; int i=0; while(data!=0){ int d = data%n; if(d>9){ str[i]='A'+d-10; } else { str[i]='0'+d; } data/=n; i++; } if(i==0){ str[0]='0'; i++; } str[i]=0; string s(str); reverse(s.begin(), s.end()); return s; } int main() { string str1; int jz,jz1; long long a=0,b=0,c=0; while (cin>>jz>>str1>>jz1){ a=toTen(str1,jz); str1=toJZ(a,jz1); cout<<str1<<endl; } return 0; }


测评信息: