백준[11576] - base conversion

문제

백준 11576 문제 보기

접근 방법

먼저 입력된 값을 10진법으로 변환한 뒤 다시 진법을 변환한다.

코드

#include <iostream>
#include <cmath>
#include <vector>
#include <algorithm>
using namespace std;
int A, B, m;
vector<int > v;
int main() {
cin >> A >> B;
cin >> m;
int temp;
int decimal = 0;
for(int i = 0; i < m; i++) {
cin >> temp;
decimal += temp * pow(A, m - i - 1);
}
while(decimal) {
v.push_back(decimal % B);
decimal /= B;
}
reverse(v.begin(), v.end());
long size = v.size();
for(int i = 0; i < size; i ++) {
cout << v[i] << ' ';
}
return 0;
}
Share