1. ๋ฌธ์ ์ค๋ช
๋ฌธ์ ๋งํฌ
- ์
๋ ฅ
- ์ง๋ฒ n, ๋ฏธ๋ฆฌ ๊ตฌํ ์ซ์์ ๊ฐฏ์ t, ๊ฒ์์ ์ฐธ๊ฐํ๋ ์ธ์ m, ํ๋ธ์ ์์ p
- ์ถ๋ ฅ
- ํ๋ธ๊ฐ ๋งํด์ผ ํ๋ ์ซ์ t๊ฐ๋ฅผ ๊ณต๋ฐฑ ์์ด ์ฐจ๋ก๋๋ก ๋ํ๋ธ ๋ฌธ์์ด. ๋จ, 10
15๋ ๊ฐ๊ฐ ๋๋ฌธ์ AF๋ก ์ถ๋ ฅ
2. ์ฝ๋
def convert(n, base):#n:10์ง์ base: ์ง์ k
T = "0123456789ABCDEF"
q, r = divmod(n, base)
if q == 0:
return T[r]
else:
return convert(q, base) + T[r]
def solution(n, t, m, p):#์ง๋ฒ n, ๋ฏธ๋ฆฌ ๊ตฌํ ์ซ์์ ๊ฐฏ์ t, ๊ฒ์์ ์ฐธ๊ฐํ๋ ์ธ์ m, ํ๋ธ์ ์์ p
answer = '' #์ ๋ต๋ฆฌ์คํธ
tube = ''
for num in range(m*t):
answer+=convert(num, n)
for i in range(p-1, m*t,m):
tube+= answer[i]
return tube
3. ํ๊ณ
- 10์ง์๋ฅผ k์ง์๋ก ๋ณํํ๊ธฐ
- ์ฌ๊ทํจ์๋ฅผ ํตํด ๊ตฌํ์ด ๊ฐ๋ฅํ๋ค
- ๋ชซ์ด 0์ด ๋ ๋๊น์ง ๋๋จธ์ง๋ฅผ ๊ตฌํด์ผํ๋ฉฐ ์ด ๊ณผ์ ์์ ๋์จ ๋๋จธ์ง๋ค์ ์ญ์์ผ๋ก ๊ฒฐํฉํด์ผํ๋ค.
- ์ฐธ๊ฐ์ธ์*ํ๋ธ๊ฐ ๋งํด์ผํ๋ ์ซ์ ๊ฐฏ์๋งํผ ์ซ์(answer)๋ฅผ ๊ตฌํ๊ณ
- p-1(์ธ๋ฑ์ค๋ก ์กฐํํ๊ธฐ ์ํด) ๋ถํฐ m*t๊น์ง m์ฉ ๊ฑด๋๋ฐ๋ฉด์ ํ๋ธ์ ๊ฐ์ ์กฐํํ์ฌ tube์ ๋ถ์ฌ์ค
4. ์ฐธ๊ณ
https://codingdojang.com/scode/458