๐ ๋ฌธ์ ๋งํฌ
๐ ์ฝ๋
# ๋ด ํ์ด. ๋ฆฌ์คํธ remove() ์ฌ์ฉ, ๋ชจ๋ ์์๊ฐ ์ ๊ฑฐ๋ ๋๊น์ง
T = int(input())
for tc in range(1, T+1):
N = int(input())
rule = [i for i in range(0, 10)]
x = 1
while rule != []:
N_tmp = x * N
x += 1
N_arr = list(map(int, str(N_tmp))) # ์๋ฆฌ์ ๋ถ๋ฆฌ
for i in N_arr:
if i in rule:
rule.remove(i)
else:
pass
print("#%d %d" %(tc, N_tmp))
- 0๋ถํฐ 9๊น์ง ๋ค์ด์๋ rule ๋ฆฌ์คํธ๋ฅผ ํ๋ ๋ง๋ฆ
- rule ๋ฆฌ์คํธ๊ฐ [] ๋ ๋๊น์ง while ๋ฐ๋ณต๋ฌธ.
- ๊ณ์ +1 ๋๋ x ๋ณ์ ๊ณฑํ๋ฉด์(๋ฐฐ์), ๊ทธ ์์ ๋ํ์ฌ ์๋ฆฌ์ ๋ถ๋ฆฌ
- ํด๋น ์๋ฆฌ์๊ฐ rule ๋ฆฌ์คํธ์ ์์ผ๋ฉด ์ ๊ฑฐ, ์์ผ๋ฉด ํจ์ค
0๋ถํฐ 9๊น์ง ๋ค์ด์๋ rule ๋ฆฌ์คํธ๋ฅผ ๋ง๋ค๊ณ ,
๋ฐฐ์๊ฐ ๊ณฑํด์ง N์ ๊ฐ ์๋ฆฌ์๋ฅผ ๋ถ๋ฆฌํ์ฌ ํด๋น ์ซ์๊ฐ rule ๋ฆฌ์คํธ ์์ ์์ผ๋ฉด ์ ๊ฑฐํ๋ ์์ผ๋ก ํ์๋ค.
rule ๋ฆฌ์คํธ์ ๋ชจ๋ ์์๊ฐ ์ ๊ฑฐ๋์ด [] ๋น ๋ฆฌ์คํธ๊ฐ ๋ ๋๊น์ง !
๐ข ์ฝ์ง ์ด์
- ๋ฆฌ์คํธ์ ๋ชจ๋ ์์๋ฅผ ์ ๊ฑฐํ๋ฉด None์ด ์๋๋ผ [] ์ด๋ค.
- N = x * N ์ด๋ ๊ฒ ํ๋ฉด N์ด ๊ณ์ ์
๋ฐ์ดํธ ๋๋๊น ๊ฐ์ด ๋ปฅํ๊ธฐ ๋๋ค .. ๋ฐ๋ผ์ ์๋ก์ด ๋ณ์๋ฅผ ๋ฃ์ด์ค์ผ ํจ.
N_tmp = x * N ์ฒ๋ผ, ๊ทธ๋์ผ 1์ ๋ฐฐ์, 2์ ๋ฐฐ์, 3์ ๋ฐฐ์, ... ์ญ์ญ ๋จ.
# ๋ค๋ฅธ ํ์ด. ์ค๋ณต์ ๊ฑฐ ์งํฉ Set ์ฌ์ฉ, ๊ธธ์ด๊ฐ 10์ด ๋ ๋๊น์ง
ํจ์ฌ ์ค๋งํธํ ํ์ด ๊ฐ๋ค ..
T = int(input())
for tc in range(1, T+1):
n = int(input())
s = set() # ์ค๋ณต์ ๊ฑฐ ์งํฉ ์ ์ธ
cnt = 1
while True:
for k in list(str(n)): # ์๋ฆฌ์ ๋ถ๋ฆฌํด์ ๊ฐ ์๋ฆฌ์ set์ ์ถ๊ฐ
s.add(k)
if len(s) == 10: # 0~9๊น์ง์ ๊ธธ์ด, ์ด 10์ด ๋๋ฉด break
break
n //= cnt # n์ด 1295๊ฐ์ ์ ์งํ๊ธฐ ์ํด ..
cnt += 1
n *= cnt # ๋ง์ง๋ง ์ซ์ ์ถ๋ ฅ
print("#{} {}" .format(tc, n))
โญ๏ธ ํฌ์ธํธ!
- ๊ฒ์ฆ ์ฌ๋ถ๋ฅผ ๊ธธ์ด๋ก ํ๋จ. 0~9๊น์ง๋๊น 10๊ฐ.
- ์ค๋ณต์ ๊ฑฐ ์งํฉ ์ฌ์ฉ
n //= cnt
→ ๋ณ์๋ฅผ ์๋ก ๋ง๋ค์ด์ฃผ๋ ๋์ , n์ cnt๋ก ๋๋๊ณ , cnt += 1 ํด์ฃผ๊ณ , cnt๋ก ๋ค์ ๊ณฑํด์ค.
๊ทธ๋์ n์ด ๋ณํ์ง ์๊ณ ๊ณ์ n์ *1, *2, *3, ... ์ ํ ์ ์์๋ค !
# ๋ ๋ค๋ฅธ ํ์ด. ๋ฆฌ์คํธ ์์ 0์ด ์กด์ฌํ๋ ๋์
์ฒ์ฌ๊ฐ๋ค .. ๋ ์ ์ด๋ฐ ์๊ฐ์ด ์ ๋ ๊น !!!
for tc in range(1, int(input())+1):
N = int(input()) # 1295
numbers = [0] * 10
# ๋ฐฐ์ ์ฌ๋ฆฌ๊ธฐ
i = 1
while 0 in numbers: # numbers ๋ฆฌ์คํธ ์์ 0์ด ์กด์ฌํ๋ ๋์ !!!
num = str(N * i) # 1295 * 1 = '1295'
for j in range(len(num)): # j = 0, 1, 2, 3
numbers[int(num[j])] += 1 # num[0] = '1295'์ ์ฒซ ๋ฒ์งธ == 1, ์ฆ numbers[1]์ += 1
i += 1
print('#{} {}' .format(tc, num))
์ถ์ฒ: https://spongebob88.tistory.com/47
N์ ๋ฐฐ์๋ฅผ ๊ณฑํด์ str ํํ๋ก num์ ์ ์ฅํ ๋ค์,
ํด๋น num์ ๊ธธ์ด๋์ ํฌ๋ฌธ ๋๋ฉด์
numbers ๋ฆฌ์คํธ ์ธ๋ฑ์ค๋ก int(num[j])๋ฅผ ๋ฃ๋ ...!!!!!!! โญ๏ธโญ๏ธ
๐ก ์๋กญ๊ฒ ์๊ฒ ๋ ์ง์
๋ฆฌ์คํธ ์์ 0์ด ์กด์ฌํ๋ ๋์
while 0 in lst:
๐ ๊ฒฐ๊ณผ
๋ด ํ์ด๊ฐ ๋ ์๊ฐ/๋ฉ๋ชจ๋ฆฌ ํจ์จ์ด ์ข๋ค ..?
'Algorithm > SW Expert Academy' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[SWEA/d2] 1945. ๊ฐ๋จํ ์์ธ์๋ถํด (Python) _๋์ ๋๋ฆฌ ํ์ฉ ํ (0) | 2023.11.08 |
---|---|
[SWEA/d2] 1948. ๋ ์ง ๊ณ์ฐ๊ธฐ (Python) (0) | 2023.11.07 |
[SWEA/d2] 1940. ๊ฐ๋! RC์นด! (Python) (0) | 2023.11.07 |
[SWEA/d2] 1204. ์ต๋น์ ๊ตฌํ๊ธฐ (Python) (0) | 2023.11.07 |
[SWEA/d2] 1926. ๊ฐ๋จํ 369 ๊ฒ์ (Python) (0) | 2023.11.07 |