https://www.acmicpc.net/problem/11005
2가지 방법으로 풀어보았다.
기억해야할 것은 정수형 숫자에 + '0' 하면 '숫자' 꼴인 char형으로 변환이 되고 정수형 숫자 + 'A'를 하면 숫자만큼 알파벳이 증가한다.
예시)
0 + 'A' = 'A'
1 + 'A' = 'B'
2 + 'A' = 'C'
5 + '0' = '5'
6 + '0' = '6'
#include <iostream>
#include <stack>
using namespace std;
int N, B;
stack<int> v;
int main() {
cin >> N >> B;
int tmp = N;
while (tmp >= B) {
v.push(tmp % B);
tmp /= B;
}
v.push(tmp);
while (!v.empty()) {
int n = v.top();
v.pop();
if (n >= 10) cout << char(n - 10 + 'A');
else cout << n;
}
}
#include <iostream>
using namespace std;
int N, B;
char c[40];
int main() {
cin >> N >> B;
int i = 0;
while (N>0) {
int temp = N % B;
if (temp >= 10) c[i] = temp - 10 + 'A'; //10이상은 A
else c[i] = temp + '0'; //int to str
i++;
N /= B;
}
for (int j = i-1; j >= 0; j--) {
cout << c[j];
}
}
package algorithm;
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int N = sc.nextInt();
int B = sc.nextInt();
StringBuilder sb = new StringBuilder();
while(N>0) {
if(N%B>=10) {
sb.append((char)(N%B-10+'A'));
}else sb.append((char)(N%B+'0'));
N/=B;
}
System.out.println(sb.reverse());
}
}
'Algorithm > 구현' 카테고리의 다른 글
[백준] 2671번 : 잠수함식별 (C++) (0) | 2021.09.25 |
---|---|
[백준] 2003번 : 수들의 합 2 (C++) (0) | 2021.09.22 |
[백준] 17837번 : 새로운 게임 2 (C++) (삼성 SW 역량테스트) (0) | 2021.09.19 |
[프로그래머스] 괄호 변환 (C++) (2020 KAKAO BLIND RECRUITMENT) (0) | 2021.09.10 |
[백준] 10250번 : ACM 호텔 (0) | 2021.09.02 |
댓글