[백준] 11005: 진법 변환 2 (Python)
진법의 index를 알기위한 arr (string)을 정의한다. (36진법 이하)N이 0이 될 때까지 s라는 string에 arr\[N%B]가 의미하는 나머지 문자를 추가하고 N을 N//B로 초기화한다.s를 뒤집어서 출력한다.
velog.io
https://www.acmicpc.net/problem/11005
11005번: 진법 변환 2
10진법 수 N이 주어진다. 이 수를 B진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를
www.acmicpc.net

b진법 변환 -> 더 안나눠질 때까지 b로 계속 나눈 뒤 나머지를 저장
a를 b로 나눈 나머지의 자리에 위치한 값을 계속 가져온다 !
남은 걸로 계속 나누고 x에 넣고 반복
but ) 몫들의 순서 거꾸로 뒤집어야함 !!
그래서 [::-1] 해줘야한다
a, b = map(int,input().split())
x = ''
arr = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
while a:
x += str(arr[a%b])
a //= b
print(x[::-1])
'백준 문제풀이 > 수학' 카테고리의 다른 글
[백준] 1373 / 1212 2진수 8진수 - python (0) | 2022.11.11 |
---|---|
[백준] 2745 진법 변환 - python (0) | 2022.11.11 |
[백준] 9613 GCD합(최대공약수) -phyton (0) | 2022.11.10 |
[백준] 2609 최대공약수와 최소공배수 / 1934 최소공배수 -phyton (0) | 2022.11.09 |
[백준] 22966 가장쉬운문제찾기 -phyton (0) | 2022.11.08 |