[Baekjoon] 2745. 진법 변환

2024. 3. 1. 12:18·코딩테스트/Python
목차
  1. 🔗 Problem Link
  2. ❔Thinking
  3. 💻Solution
  4. 🗝️keypoint
728x90
반응형

🔗 Problem Link

 

2745번: 진법 변환

B진법 수 N이 주어진다. 이 수를 10진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 

www.acmicpc.net


❔Thinking

  • 문자열로 주어지는 숫자 N을 앞에서 부터 차례대로 B진법에 맞게 변환한다.
  • B진법은 각 자리 숫자에 B를 곱하여 계산한다.

💻Solution

import sys
input = sys.stdin.readline

N, B = map(str, input().split())
B = int(B)
N = list(N)[::-1]
number = 0
for idx in range(len(N)):
    if N[idx].isalpha():
        number += (B ** idx) * (ord(N[idx])-55)
    else:
        number += (B ** idx) * int(N[idx])
print(number)

🗝️keypoint

  1. 진법은 (X진법 ** 숫자의 인덱스 번호)에 각 자리 숫자를 곱해서 계산한다.
  2. ord()를 통해 유니코드에 해당하는 숫자로 변환하고, 55를 빼서 'A'가 10이 될 수 있도록 한다.
    1. '0123456789AB....'로 해당 문자열을 인덱스로 표현하는 방법도 있다.
  3. list(N)[::-1]을 통해 진법 계산이 편하도록 순서를 뒤집는다. (sort는 리스트 순서를 정렬하므로 사용할 수 없다)
저작자표시

'코딩테스트 > Python' 카테고리의 다른 글

[Baekjoon] 24267. 알고리즘 수업 - 알고리즘의 수행 시간 6  (0) 2024.03.04
[Baekjoon] 2720. 세탁소 사장 동혁  (0) 2024.03.01
[LeetCode] 55. Jump Game  (0) 2023.12.04
[LeetCode] 189. Rotate Array  (1) 2023.11.28
[Baekjoon] 1167. 트리의 지름  (1) 2023.10.27
  1. 🔗 Problem Link
  2. ❔Thinking
  3. 💻Solution
  4. 🗝️keypoint
'코딩테스트/Python' 카테고리의 다른 글
  • [Baekjoon] 24267. 알고리즘 수업 - 알고리즘의 수행 시간 6
  • [Baekjoon] 2720. 세탁소 사장 동혁
  • [LeetCode] 55. Jump Game
  • [LeetCode] 189. Rotate Array
swwho
swwho
일상을 데이터화하다
  • swwho
    하루한장
    swwho
  • 전체
    오늘
    어제
    • 분류 전체보기 (188) N
      • ML_DL (39) N
        • MUJAKJUNG (무작정 시리즈) (18) N
        • 딥러닝 공부하기 (21)
      • 데이터사이언스 (1)
        • EDA (1)
        • 데이터과학을 위한 통계 (0)
      • 데이터엔지니어링 (2)
      • 논문리뷰 (2)
        • Computer Vision (2)
      • Python 활용하기 (12)
      • 코딩테스트 (127)
        • Python (109)
        • MySQL (14)
      • Git (3)
      • MySQL 활용하기 (0)
      • 일상 이야기 (1)
  • 블로그 메뉴

    • 홈
    • 태그
  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
swwho
[Baekjoon] 2745. 진법 변환
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.