Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
434 | 关清声 | 二进制转R进制 | C++ | Wrong Answer | 0 MS | 276 KB | 629 | 2022-08-19 12:35:24 |
#include<iostream> #include<cstring> #include<algorithm> #include<cmath> using namespace std; int main() { string a; long long ten=0; int r; getline(cin,a); cin>>r; for(int i=a.size()-1;i>=0;i--) { if(a[i]=='1') { ten+=pow(2,i); } } char b[1001]={'0'},i=0; while(ten!=0) { if(r>10) { if(ten%r>=10) { b[i]=ten%r+55; } else { b[i]=ten%r+48; } } else if(r==10) { cout<<ten<<endl; return 0; } else { b[i]=ten%r+48; } ten/=r; i++; } for(int i=strlen(b)-1;i>=0;i--) { cout<<char(b[i]); } return 0; }
------Input------
101010101010101100 16
------Answer-----
2AAAC
------Your output-----
D555