https://www.acmicpc.net/problem/2745

 

๋ฌธ์ œ

 

B์ง„๋ฒ• ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. ์ด ์ˆ˜๋ฅผ 10์ง„๋ฒ•์œผ๋กœ ๋ฐ”๊ฟ” ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

10์ง„๋ฒ•์„ ๋„˜์–ด๊ฐ€๋Š” ์ง„๋ฒ•์€ ์ˆซ์ž๋กœ ํ‘œ์‹œํ•  ์ˆ˜ ์—†๋Š” ์ž๋ฆฌ๊ฐ€ ์žˆ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์•ŒํŒŒ๋ฒณ ๋Œ€๋ฌธ์ž๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

A: 10, B: 11, ..., F: 15, ..., Y: 34, Z: 35

 

์ž…๋ ฅ

์ฒซ์งธ ์ค„์— N๊ณผ B๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (2 ≤ B ≤ 36)

B์ง„๋ฒ• ์ˆ˜ N์„ 10์ง„๋ฒ•์œผ๋กœ ๋ฐ”๊พธ๋ฉด, ํ•ญ์ƒ 10์–ต๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค.

 

์ถœ๋ ฅ

์ฒซ์งธ ์ค„์— B์ง„๋ฒ• ์ˆ˜ N์„ 10์ง„๋ฒ•์œผ๋กœ ์ถœ๋ ฅํ•œ๋‹ค.

 

์˜ˆ์ œ ์ž…๋ ฅ1 ์˜ˆ์ œ ์ถœ๋ ฅ1
ZZZZZ 36 60466175

 

 

์†Œ์Šค ์ฝ”๋“œ
# 1
N,B = input().split()

idx = len(N) - 1
decimal_num = 0

for num in N:
    add_num = 0
    if num.isdigit():
        add_num = int(num) * (int(B)**idx)
    else:
        add_num = (ord(num)-55) * (int(B)**idx)
    decimal_num += add_num
    idx -= 1

print(decimal_num)

 

ํ’€์ด # 1

  • ์ˆซ์ž๋ฅผ N, ์ง„๋ฒ•์„ B์— ์ €์žฅ
  • ์ˆซ์ž์˜ ๊ธธ์ด์—์„œ 1์„ ๋บ€ ๊ฐ’์„ idx์— ์ €์žฅ (์ง„๋ฒ• ๊ณ„์‚ฐ ์‹œ ์‚ฌ์šฉ)
  • N์„ ํ•œ ์ž๋ฆฌ์”ฉ ๋Œ๋ฉด์„œ ์ˆซ์ž์ธ์ง€ ๋ฌธ์ž์ธ์ง€ ํ™•์ธ
    • ์ˆซ์ž์ธ ๊ฒฝ์šฐ ํ•ด๋‹น ์ˆซ์ž์— idx ์ œ๊ณฑ์„ add_num์œผ๋กœ ์‚ฌ์šฉ
    • ๋ฌธ์ž์ธ ๊ฒฝ์šฐ ํ•ด๋‹น ๋ฌธ์ž์˜ ์•„์Šคํ‚ค ์ฝ”๋“œ ๋ฒˆํ˜ธ์—์„œ 55๋ฅผ ๋บ€ ์ˆ˜์— idx ์ œ๊ณฑ์„ add_num์œผ๋กœ ์‚ฌ์šฉ
  • decimal_num์— ์œ„์—์„œ ๊ตฌํ•œ ์ˆ˜๋ฅผ ๋”ํ•˜๊ณ  ์ž๋ฆฟ์ˆ˜ idx์—๋Š” 1์„ ๋บด๊ธฐ

 

# 2
N,B = input().split()

N = N[::-1]
numbers = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
decimal_num = 0

for idx,num in enumerate(N):
    decimal_num += (int(B)**idx)*(numbers.index(num))

print(decimal_num)

 

ํ’€์ด # 2

  • ์ˆซ์ž๋ฅผ N, ์ง„๋ฒ•์„ B์— ์ €์žฅ
  • ์ˆซ์ž N์„ ๊ฑฐ๊พธ๋กœ ๋งŒ๋“ค๊ธฐ (์ง„๋ฒ• ๊ณ„์‚ฐ์‹œ์— ์•ž์—์„œ๋ถ€ํ„ฐ ์ž๋ฆฟ๊ฐ’์„ ๊ณฑํ•˜๊ธฐ ์œ„ํ•œ ๊ณผ์ •)
  • ์ˆซ์ž์™€ ๋ฌธ์ž๋ฅผ numbers์— ์ €์žฅ
  • N์„ ํ•œ ์ž๋ฆฌ์”ฉ ๋Œ๋ฉด์„œ ๊ฐ’ ๋”ํ•˜๊ธฐ
    • (B์ง„๋ฒ•์˜ idx ์ œ๊ณฑ) x (numbers์—์„œ num์˜ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ)

 

์•„์Šคํ‚ค์ฝ”๋“œ ๋ฒˆํ˜ธ๋ฅผ ์ด์šฉํ•œ ์ฒซ ๋ฒˆ์งธ ํ’€์ด๋กœ ํ’€์—ˆ๋Š”๋ฐ ๋‹ค๋ฅธ ํ’€์ด๋ฅผ ์ฐพ์•„๋ณด๋‹ˆ ๋Œ€๋ถ€๋ถ„ ๋‘ ๋ฒˆ์งธ ํ’€์ด๋กœ ํ‘ผ ๊ฒƒ ๊ฐ™๋‹ค. ํ™•์ธํ•ด๋ณด๋‹ˆ ์‚ฌ์šฉ๋˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ์™€ ์‹œ๊ฐ„์€ ๋˜‘๊ฐ™์•„์„œ ํŽธํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ํ’€๋ฉด ๋  ๋“ฏ ํ•˜๋‹ค.

+ Recent posts