Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: thanainan

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

Language: cpp

Time: 0.003 second

Submitted On: 2025-09-25 10:51:34

#include <bits/stdc++.h>
using namespace std;
int main()
{
	string n,A;
	A = "";
	int m,a;
	cin>>n;
	m = 0;
	for(int i=0;i<n.length();i++){
		if(n[i]<='9'){
			m = m + (n[i]-'0')*(pow(16,n.length()-i-1));
		}
		else{
			m = m + (n[i]-'A'+10)*(pow(16,n.length()-i-1));
		}
	}
	a=m;
	while(a>=2){
		A = A + char((a%2)+'0');
		a = a/2;
	}
	A = A + char((a%2)+'0');
	if(a==0){
		A="0";
	}
	for(int i=A.length()-1;i>=0;i--){
		cout<<A[i];
	}
	cout<<"\n";
	a=m;
	A="";
	while(a>=8){
		A = A + char((a%8)+'0');
		a = a/8;
	}
	A = A + char((a%8)+'0');
	if(a==0){
		A="0";
	}
	for(int i=A.length()-1;i>=0;i--){
		cout<<A[i];
	}
}