Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
156325 | 罗子杰 | K进制数转L进制数 | C++ | 通过 | 100 | 0 MS | 260 KB | 619 | 2024-07-17 10:17:42 |
#include<bits/stdc++.h> #include<cstdlib> using namespace std; int m,d,i,j,l; int a[1005]; int main() { string n; int ans; while(cin>>d>>n>>l){ ans=0; for(i=1;i<=n.size();i++){ a[i]=int(n[i-1]); if(a[i]<65){ a[i]-=48; } else{ a[i]-=55; } } ans=a[1]; for(j=2;j<=i-1;j++){ ans*=d; ans+=a[j]; } //=========================== m=ans; i=0; while(m!=0){ a[i++]=m%l; m=m/l; } for(j=i-1;j>=0;j--){ if(a[j]>=10) { a[j]+=55; cout<<char(a[j]); } else{ cout<<a[j]; } } cout<<endl; } return 0; }