Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: Weathery
Problemset: แปลงเลขฐาน
Language: cpp
Time: 0.004 second
Submitted On: 2026-10-07 12:49:44
#include <bits/stdc++.h>
using namespace std;
int main() {
string n;
int i,j,k=1,c,s,d=0;
cin >> n;
c=n.size();
for (i=c-1;i>=0;i--){
if (n[i]>='A' && n[i]<='F') {
d+=(n[i]-55)*k;
} else {
d+=(n[i]-'0')*k;
}
k*=16;
}
s=d;
if (s==0) {
cout << 0;
return 0;
}
vector <int> v;
while (s>0) {
v.push_back(s%2);
s/=2;
}
reverse(v.begin(),v.end());
for (i=0;i<v.size();i++) {
cout << v[i];
}
cout <<endl;
s=d;
if (s==0) {
cout << 0;
return 0;
}
v.clear();
while (s>0) {
v.push_back(s%8);
s/=8;
}
reverse(v.begin(),v.end());
for (i=0;i<v.size();i++) {
cout << v[i];
}
}