Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: cheetah

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

Language: cpp

Time: 0.003 second

Submitted On: 2026-07-04 23:20:34

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

int main () {
    ios_base::sync_with_stdio(0);
    cin.tie(0);

    string n;
    vector<int> v2, v8;
    cin >> n;
    int baset = 0;
    
    for (int i = 0; i < n.size(); ++i) {
        if (n[i] >= 'A') {
            baset = baset * 16 + 10 + n[i] - 'A';
        }
        else {
            baset = baset * 16 + n[i] - '0';
        }   
    }
    // cout << baset;

    int a = baset;
    do {
        v2.push_back(a % 2);
        a = a / 2;
    } while (a > 0);

    for (int i = 0; i < v2.size(); ++i) {
        cout << v2[v2.size() - i - 1];
    }
    cout << "\n";

    a = baset;
    do {
        v8.push_back(a % 8);
        a = a / 8;
    } while (a > 0);

    for (int i = 0; i < v8.size(); ++i) {
        cout << v8[v8.size() - i - 1];
    }
    cout << "\n";

    // int n;
    // cin >> n;
    // std::vector<int> v;

    // do {
    //     v.push_back(n % 2);
    //     n = n / 2;
    // } while (n > 0);

    // for (int i = 0; i < v.size(); ++i) {
    //     cout << v[v.size() - i - 1] << " ";
    // }

    // string n = {1, 1, 0, 0, 1, 0, 0};
    // int sum = 0;
    // for (int i = 0; i < n.size(); ++i) {
    //     sum = (sum * 2) + n[i];
    // }
    // cout << sum;

    return 0;
}