Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: Kidmaiok

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

Language: cpp

Time: 0.005 second

Submitted On: 2026-10-11 10:05:32

#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){
        t += char('0'+(temp%2));
        temp /= 2;
    }
    reverse(t.begin(),t.end());

    int temp2 = num;
    
    while(temp2 > 0){
        e += char('0'+(temp2%8));
        temp2 /= 8;
    }
    reverse(e.begin(),e.end());


    if(num == 0){
        cout << "0" nl << "0";
        return 0;
    }
    cout << t << "\n" << e;
    
}