Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: jamesz
Problemset: แปลงเลขฐาน
Language: cpp
Time: 0.005 second
Submitted On: 2026-10-24 22:11:16
#include<iostream>
#include<cmath>
#include<vector>
using namespace std;
typedef long long ll;
vector<int>v2;
vector<int>v8;
int main(){
string h;
cin.tie(0);
cin>>h;
ll n10 = 0, b10;
for(int i = 0; i<h.size(); i++){
if(h[i] >= '0' && h[i] <= '9'){
n10+= (h[i]-'0') * pow(16 , h.size()-i-1);
}
else{
n10+= (h[i]-'A'+10) * pow(16 , h.size()-i-1);
}
}
b10 = n10;
while(b10>0){
v2.push_back(b10%2);
b10/=2;
}
while(n10>0){
v8.push_back(n10%8);
n10/=8;
}
for(int i = v2.size()-1; i>=0; i--)
cout<<v2[i];
cout<<"\n";
for(int i = v8.size()-1; i>=0; i--)
cout<<v8[i];
return EXIT_SUCCESS;
}