Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
167859 刘墨谦 K进制数转L进制数 C++ 解答错误 0 1 MS 252 KB 753 2024-08-19 19:43:05

Tests(0/5):


#include<iostream> #include<vector> #include<bits/stdc++.h> using namespace std; string ccc(string num,int n,int m){ int t=0; int len=num.size(); for (int i=0;i<len;i++){ if (num[i]>='0' && num[i]<='9'){t+=(num[i]-'0')*pow(n,len-i-1);} else{t+=(num[i]-'A'+10)*pow(n,len-i-1);} } vector<int>n_c; int k; char q; string nnn; while(t!=0){ n_c.push_back(t%m); t=t/m; } for (int i=0,j=n_c.size()-1;i<j;i++,j--){ k=n_c[i]; n_c[i]=n_c[j]; n_c[j]=k; } for (int j=0;j<=n_c.size()-1;j++){ if(n_c[j]>=10){q=n_c[j]-10+'A';} else{q=n_c[j]-0+'0';} nnn+=q; } return nnn; } int main(){ string num; int n,m; while(cin){ cin>>n>>num>>m; num=ccc(num,n,m); cout<<num<<endl; } return 0; }


测评信息: