60PTS

P1143 进制转换

~~ 刚A的 ~~ ```cpp #include<iostream> #include<string> #include<stack> #define ll long long using namespace std; string s; stack<int>a; char ch[10005]; bool isnum(char ch) { if(ch<='9'&&ch>='0')return 1; return 0; } int main() { int n,m,len; ll sum=0,u=1; cin>>n>>s>>m; len=s.size(); for(int i=s.size()-1;i>=0;i--) { char ch=s[i]; if(isnum(ch))sum+=(ch-'0')*u; else sum+=(ch-'A'+10)*u; u*=n; } int k=0,q; while(sum!=0) { q=sum%m; if(q<10)ch[++k]=q+'0'; else ch[++k]=q-10+'A'; sum/=m; } for(int i=k;i>=1;i--)cout<<ch[i]; cout<<'\n'; return 0; } ```
by junjie_zhao @ 2023-08-31 14:37:37


|