Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: Sol2468

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

Language: cpp

Time: 0.003 second

Submitted On: 2026-10-16 01:12:37

#include <bits/stdc++.h>
using namespace std;

// string ten_to_base(int in1,int base){
//     string temp="" ;
//     if(in1==0) return "0" ;
//     while(in1!=0){
//         if(in1%base<10) temp = char(in1%base+'0') + temp ;
//         else temp = char(in1%base+55) + temp ;
//         in1 = in1/base ;
//     }
//     return temp ;
// }

int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    string a ;
    cin >> a ;
    int temp1=0 ;
    for(int i=0 ; i<a.size() ; i++){
        if(isdigit(a[i]))temp1+=(a[i]-'0')*(pow(16,a.size()-i-1)) ;
        else temp1+=(a[i]-55)*(pow(16,a.size()-i-1)) ;
    }
    int temp2 = temp1 ;
    string bina="" ;
    if(temp1==0){
        bina="0" ;
    }else{
        while(temp1!=0){
            if(temp1%2<10) bina = char(temp1%2+'0') + bina ;
            else bina = char(temp1%2+55) + bina ;
            temp1 = temp1/2 ;
        }
    }
    string eig="" ;
    if(temp2==0){
        eig="0" ;
    }else{
        while(temp2!=0){
            if(temp2%8<10) eig = char(temp2%8+'0') + eig ;
            else eig = char(temp2%8+55) + eig ;
            temp2 = temp2/8 ;
        }
    }
    cout << bina << "\n" << eig ;
    return 0 ;
}