Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: Karatat007

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

Language: cpp

Time: 0.004 second

Submitted On: 2026-10-01 20:37:25

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

string intobinary(long long i){
    string binary = "01";
    string result = "";
    while(i > 0){
        result = binary[i%2] + result;
        i /= 2;
    }
    return result;
}
string intobase8(long long i){
    string eightnary = "01234567";
    string result = "";
    while(i > 0){
        result = eightnary[i%8] + result;
        i /= 8;
    }
    return result;
}
int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);

    string b16;
    long long b10 = 0;
    cin >> b16;
    for(int i = 0;i < b16.size();++i){
        if(b16[i] - '0' > 10){
            b10 = 16 * b10 + (b16[i] - 'A' + 10);
        }
        else{
            b10 = 16 * b10 + (b16[i] - '0');
        }
    }
    cout << intobinary(b10) << '\n' << intobase8(b10);
}