ํฐ์คํ ๋ฆฌ ๋ทฐ
728x90
๋ฐ์ํ
๋ฌธ์
๋ฌธ์ ํ์ด
์ง๋ฒ ๋ณํ์ ํ๊ธฐ ์ํด์ ๊ฐ ์๋ฆฌ์ ํด๋น ํ๋ ์์น์ ๋ฐ๋ผ ์์น ๊ฐ์ ์ ๊ณฑํด์ฃผ๋ฉด ๋๋ค. ์๋ฅผ ๋ค์ด ์์์ ๊ฐ์ ZZZZZ์ธ ๊ฒฝ์ฐ๋ (35 * 36 ^ 4) + (35 * 36 ^ 3) + (35 * 36 ^ 2) + (35 * 36 ^ 1) + (35 * 36 ^ 0)์ ๊ฐ์ด 10์ง๋ฒ์ผ๋ก ๋ณํ๋ ๊ฐ์ด๋ค. ๋ค๋ฅธ ๋ฌธ์ ์ ๋ฌ๋ฆฌ ์ํ๋ฒณ A - Z๋ ๊ฐ์ด ์ ๋ ฅ๋๋ฏ๋ก ์ด๋ฅผ ๊ตฌ๋ถํ์ฌ ์ฒ๋ฆฌํ์ฌ์ผ ํ๋ค.
- isdigit()๋ฅผ ํ์ฉํ์ฌ ๋ฌธ์, ์ซ์๋ฅผ ๊ตฌ๋ถํ๋ค.
- ๋ฌธ์์ธ ๊ฒฝ์ฐ A - Z๋ ์์คํค ์ฝ๋๋ก 65 - 90์ผ๋ก ๋ํ๋ ์ ์๊ธฐ์ 55๋ฅผ ๋นผ๋ฉด ๋ฌธ์ ์ ๊ฐ์ ์๋ก ๋ณํ๋๋ค.
- ๋ฐ๋ณต๋ฌธ์ enumerate๋ก ๋๋ฉด์ ์ธ๋ฑ์ค์ ๊ฐ์ ๊ฐ์ด ์ ๊ทผํ์ฌ ์๋ฆฌ์ ๋ฐ๋ฅธ ์ ๊ณฑ์ฒ๋ฆฌ๋ฅผ ํด์ค๋ค.
>์ฝ๋
if __name__ == "__main__":
n, b = input().split()
length = len(n)
b = int(b)
answer = 0
for idx, num in enumerate(n):
change_num = int(num) if num.isdigit() else ord(num) - 55
answer += change_num * b ** (length - idx - 1)
print(answer)
728x90
๋ฐ์ํ
'๐จโ๐ป ์ฝ๋ฉํ ์คํธ > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค: 11576 Base Conversion (0) | 2020.06.27 |
---|---|
๋ฐฑ์ค: 11005 ์ง๋ฒ ๋ณํ 2 (0) | 2020.06.27 |
๋ฐฑ์ค: 2089 -2์ง์ (0) | 2020.06.26 |
๋ฐฑ์ค: 17103 ๊ณจ๋๋ฐํ ํํฐ์ (0) | 2020.06.26 |
๋ฐฑ์ค: 17087 ์จ๋ฐ๊ผญ์ง 6 (0) | 2020.06.26 |
๋๊ธ
๊ธ ๋ณด๊ดํจ
์ต๊ทผ์ ์ฌ๋ผ์จ ๊ธ
์ต๊ทผ์ ๋ฌ๋ฆฐ ๋๊ธ