Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: Mano
Problemset: แปลงเลขฐาน
Language: cpp
Time: 0.003 second
Submitted On: 2025-10-08 09:44:44
#include<iostream>
#include<cmath>
#include<vector>
using namespace std;
vector<int> two(int x){
vector<int> neo;
vector<int> viktor;
while(x>0){
viktor.push_back(x%2);
x/=2;
}
for(int i=viktor.size()-1;i>=0;i--){
neo.push_back(viktor[i]);
}
return neo;
}
vector<int> eight(int x){
vector<int> neo;
vector<int> viktor;
while(x>0){
viktor.push_back(x%8);
x/=8;
}
for(int i=viktor.size()-1;i>=0;i--){
neo.push_back(viktor[i]);
}
return neo;
}
int deci(vector<int> arr){
int x=0,y=0;
for(int i=arr.size()-1;i>=0;i--){
x+=(pow(16,y)*arr[i]);
y++;
}
return x;
}
int main(){
string str;
vector<int> arr;
int x;
cin>>str;
for(int i=0;i<str.length();i++){
if(str[i]>='0' && str[i]<='9'){
arr.push_back((int)str[i]-'0');
}else if(str[i]>='A' && str[i]<='F'){
arr.push_back((int)str[i]-'A'+10);
}
}
x=deci(arr);
if(x>65535){
return 0;
}
vector<int> dia=two(x);
for(int i=0;i<dia.size();i++){
cout<<dia[i];
}
cout<<endl;
vector<int> kita=eight(x);
for(int i=0;i<kita.size();i++){
cout<<kita[i];
}
return 0;
}