Submission

Status:

----------

Subtask/Task Score:

0/100

Score: 0

User: Kidmaiok

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

Language: cpp

Time: 0.004 second

Submitted On: 2026-10-11 09:39:27

#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define ull unsigned long long
#define space << ' '
#define nl << endl

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    string a;
    cin >> a;
    string t = "", e = "";
    int num = 0;
    for(int i =0; i < a.size();i++){
        if(a[i] <= '9' && a[i] >= '0'){
            num += (a[i]-'0')*(pow(16,a.size()-1-i));
        }else{
            num += (a[i]-'A'+10)*(pow(16,a.size()-1-i));
        }
    }
    int temp = num;
    while(temp > 0){
        e += char('0' + temp%8);
        temp -= temp%8;
        temp /= 8;
        if(temp < 8){
            e += char('0'+ temp);
        }
    }
    reverse(e.begin(),e.end());



    int temp2 = num;
    while(temp2 > 0){
        t += char('0' + temp2%2);
        temp2 -= temp2%2;
        temp2 /= 2;
        if(temp2 < 2){
            t += char('0'+ temp2);
        }
    }
    reverse(t.begin(),t.end());
    cout << t << "\n" << e;
    
}