Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: ThreeDee

Problemset: แปลงเลขฐาน

Language: cpp

Time: 0.002 second

Submitted On: 2026-06-14 14:45:50

#include <iostream>
using namespace std;

int basechange(int a){
	if(a>=65)return a-55;
	else if(a>=48)return a-48;
	
}

int main(){
	string n;
	cin>>n;
	int  i,l=n.length(),m=1,sum=0,asum=0,two[l*4],eight[l*2],j;
	for(i=l-1;i>=0;i--){
		sum+=basechange(n[i])*m;
		m=m*16;
	}
	asum=sum;
	i=0;
	while(asum>0){
		two[i]=asum%2;
		asum=asum/2;
		i++;
	}
	j=i;
	for(i=j-1;i>=0;i--){
		cout<<two[i];
	}
	cout<<'\n';
	i=0;
	while(sum>0){
		eight[i]=sum%8;
		sum=sum/8;
		i++;
	}
	j=i;
	for(i=j-1;i>=0;i--){
		cout<<eight[i];
	}
	return 0;
}