https://70825.gitbook.io/koala_python_algorithm_study/
문제분석
입력받는 10진법의 숫자(N)를 다른 진법(B)으로 바꿔서 출력하는 문제이다. 또한, 10진법을 넘어가는 진법은 숫자가 아닌 알파벳이 나타나는데 알파벳은 대문자로 출력한다.
코드
문제풀이
10진법에서 다른 진법으로 바뀔 숫자(n)과 다른 진법(b)를 입력받는다. 그리고 하나의 딕셔너리에 각 진법에 해당하는 숫자 혹은 알파벳로 초기화시킨다. 왜냐하면 10진법에서 다른 진법으로 표현하기 위해서는 해당 값의 나머지를 필요로 하는데, 이 나머지가 해당하는 숫자가 바로 딕셔너리에 존재하는 key가 되기 때문이다. 그리고 key에 해당하는 숫자 혹은 알파벳을 value에 초기화되어 있다.
10진법에서 다른 진법으로 바뀔 숫자(n)를 다른 진법(b)으로 바뀌는 값으로 몫이 0이 될 때까지 나누어 준다. 해당되는 나머지 값들을 새로운 리스트(x)에 추가하고, 몫이 0이 된 후에 마지막에 남은 숫자(n)을 리스트(x)에 추가한다.
최종적으로 10진법에서 다른 진법으로 표현하기 위한 값들은 리스트에 입력되어있고, 순서는 역순이기 때문에 출력할 때, [-1]부터 출력하면 원하느 답을 도출할 수 있다.
'Koala - 5기 > 기초 알고리즘 스터디' 카테고리의 다른 글
[백준/python] 6996번 애너그램 (0) | 2022.02.07 |
---|---|
[백준/c++] 2745번 진법변환 (0) | 2022.02.07 |
<4주차> [BOJ / C++] 11880번 - 개미 (0) | 2022.02.06 |
[백준/python] 10825: 국영수 (0) | 2022.02.06 |
[BOJ/python] 11656번 접미사 배열 (0) | 2022.02.06 |