알고리즘
백준 11005 진법 변환 2 C++
fulladdr
2023. 9. 29. 14:25
이 문제 역시 간단한 구현 문제였다.
아스키코드 표가 잘 기억나지 않아서 스트링으로 변환해야하는숫자들을 담아놨다.
N진법으로 나타내는 방법은, 숫자를 N으로 나눈 다음에 나머지를 역순으로 읽으면 되기 때문에 c++에서 제공해주는 스택 라이브러리를 사용했다.
N으로 나눈 다음에 반대방향으로 읽었다.
이렇게 하니 정답코드가나왔당
#include <iostream>
#include <stack>
using namespace std;
int N, B;
stack<char> s;
string convert = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
int main(void){
cin.tie(NULL);
ios::sync_with_stdio(false);
cin>>N>>B;
/*
10이면 A, 11이면 B, 이런식으로출력이되어야한다
*/
while (N){
char x;
x=convert[N%B];
s.push(x);
N=N/B;
}
while (!s.empty()){
cout<<s.top();
s.pop();
}
cout<<endl;
return 0;
}