Submission

Status:

----------

Subtask/Task Score:

0/100

Score: 0

User: navysrimuang

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

Language: cpp

Time: 0.004 second

Submitted On: 2025-09-28 01:03:25

#include<bits/stdc++.h>
#define endl '\n'
using namespace std;

void decto(int dec,int base){
   vector<int>tmp(1,0);
    while( dec!= 0){
        int r = dec%base;
        tmp.push_back(r);
        dec/=base;
    }
    int s = tmp.size();
    while(s-- - 1){
        cout << tmp[tmp.size() - 1];
        tmp.pop_back();
    }
    cout << endl;
}

int main(){
  string hex;
  cin >> hex;
  int len = hex.length();
  int dec = 0;
  
  for(int i = 1;i<=len;i++){
    int tmp;
    if(((int)hex[len - i]) < 58){
      tmp = hex[len - i] - '0';
    }else{
      tmp = hex[len - i] - 55;
    }
    tmp*= pow(16,i-1);
    dec += tmp;
  }

  cout << dec << endl; 

  decto(dec,2);
  decto(dec,8);
  
  return 0;
}