ํ์ด์ฌ์ด๋ ์นํด์ง๊ธฐ dictionary ํํ์ ์๋ฃํ์ ๋ ๋ฆฌ์คํธ์ ๊ฐ์ ๋ด๊ธฐ ์ํด ๋ค์๊ณผ ๊ฐ์ด ์์ฑํ๋ค. name = ["may", "kein", "kain", "radi"] yearning = [5, 10, 1, 3] dic = {} for i, j in zip(name, yearning): dic[i] = j ํ์ด์ฌ์์๋ iterableํ tuple ๊ฐ์ ๋ํด dictionary๋ก ์ด๊ธฐํํด์ฃผ๋ dict() ํจ์๋ฅผ ์ ๊ณตํ๋ค. name = ["may", "kein", "kain", "radi"] yearning = [5, 10, 1, 3] dict(zip(name, yearning)) # ์คํ ๊ฒฐ๊ณผ # {'may': 5, 'kein': 10, 'kain': 1, 'radi': 3} ์ฝ๋ def solu..
๐ฅ๏ธ Computer/Algorithm Solution
ํ์ด์ฌ์ด๋ ์นํด์ง๊ธฐ ํ์ด์ฌ์์๋ iteratableํ ๋ฐ์ดํฐ์ ๋ํด ์ธ๋ฑ์ค์ ๊ฐ์ ํจ๊ป ์กฐํํ ์ ์๋ enumerate() ๋ผ๋ ํจ์๋ฅผ ์ ๊ณตํ๋ค. ๋ค์๊ณผ ๊ฐ์ด ์์ฑํ ์ ์๋ค. for idx, ch in enumerate("hello world"): print(idx, ch) # ์คํ๊ฒฐ๊ณผ # 0 h # 1 e # 2 l # 3 l # 4 o # 5 # 6 w # 7 o # 8 r # 9 l # 10 d ์ฝ๋ def solution(s): tmp = {} answer = [] for idx, ch in enumerate(s): if tmp.get(ch) is None: tmp[ch] = idx answer.append(-1) else: answer.append(idx - tmp[ch]) tmp[ch] =..
ํ์ด์ฌ์ด๋ ์นํด์ง๊ธฐ ํ์ด์ฌ์์๋ ์์ด๊ณผ ์กฐํฉ์ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ๊ณตํด์ค๋ค. from itertools import combinations a = [1, 2, 3, 4] for i in combinations(a, 3): print(i) # ๊ฒฐ๊ณผ # (1, 2, 3) # (1, 2, 4) # (1, 3, 4) # (2, 3, 4) combinations ํจ์๋ฅผ ํตํด ํน์ ๋ฆฌ์คํธ์ ์๋ ์์๋ค์ ์กฐํฉ์ผ๋ก ํํํ ์ ์๋ค. ์ด๋ ๋ฐํ๋๋ ๊ฐ์ iteratable ๊ฐ์ฒด์ด๋ฉฐ for๋ฌธ์ผ๋ก ์ํํ ์ ์๋ค. from itertools import permutations a = [1, 2, 3, 4] for i in permutations(a, 3): print(i) # ๊ฒฐ๊ณผ # (1, 2, 3) # (1, 2, 4..
ํ์ด์ฌ์ด๋ ์นํด์ง๊ธฐ ํ์ด์ฌ์์๋ ์ง๋ฒ ๋ณํ์ ์์ฃผ ํธํ๊ฒ ์ํํด์ฃผ๋ ํจ์๋ฅผ ์ ๊ณตํด์ค๋ค. ๋จ์ง ๋ฌธ์์ด์ intํ์ผ๋ก ๋ณ๊ฒฝํด์ฃผ๋์ค๋ง ์์๋ int() ํจ์์ ๋น๋ฐ์ด ์๋ค. intํจ์์๋ ๋๋ฒ์งธ ์ธ์๋ฅผ ํฌํจํ ์ ์๋๋ฐ ์ด๋ ๋ฐ๋ก intํ์ผ๋ก ๋ณํํ๋ ค๋ ๋ฌธ์์ด์ ๋๋ฒ์งธ ์ธ์ n์ง์๋ก ์ฝ๋๋ค๋ ์๋ฏธ๋ค. a = "100" b = "70" c = "0021" # 2์ง์: 100 -> 10์ง์: 4 print(int(a, 2)) # 8์ง์: 70 -> 10์ง์: 56 print(int(b, 8)) # 3์ง์: 0021 -> 10์ง์: 7 print(int(c, 3)) ๋ฐ๋ผ์ ์ int() ํจ์๋ฅผ ์ด์ฉํ์ฌ ์ง๋ฒ ๋ณํ์ ์์ฝ๊ฒ ์ํํ ์ ์๋ค. ์ฝ๋ def solution(n): tmp = '' while(n): tmp..
์ํ์ด๋ ์นํด์ง๊ธฐ ์ต๋๊ณต์ฝ์๋ ๋ง ๊ทธ๋๋ก ๋ ์์ ๊ณต์ฝ์ ์ค ์ต๋๊ฐ์ ์๋ฏธํ๋ค. ๋ ์์ ์ฝ์๋ฅผ ๋ชจ๋ ๊ตฌํ๊ณ ๊ณตํต๋ ์ฝ์ ์ค ์ต๋๊ฐ์ ๊ตฌํ๋ฉด ๋ ๊ฒ์ด๋ค. ํ์ง๋ง ์ ๊ณผ์ ์ ๋ญ๊ฐ ๋นํจ์จ์ ์ด๋ค. ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ์ ์ด์ฉํ๋ค๋ฉด ์ต๋๊ณต์ฝ์๋ฅผ ๊ฐ๋จํ๊ฒ ๊ตฌํ ์ ์๋ค ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ - ์ต๋๊ณต์ฝ์ ํธ์ ๋ฒ์ ๋ ์๊ฐ ์๋ก(ไบ) ์๋๋ฐฉ ์๋ฅผ ๋๋์ด(้ค)์ ๊ฒฐ๊ตญ ์ํ๋ ์๋ฅผ ์ป๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. https://ko.wikipedia.org/wiki/%EC%9C%A0%ED%81%B4%EB%A6%AC%EB%93%9C_%ED%98%B8%EC%A0%9C%EB%B2%95 ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ - ์ํค๋ฐฑ๊ณผ, ์ฐ๋ฆฌ ๋ชจ๋์ ๋ฐฑ๊ณผ์ฌ์ ์ํค๋ฐฑ๊ณผ, ์ฐ๋ฆฌ ๋ชจ๋์ ๋ฐฑ๊ณผ์ฌ์ . ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ(-ไบ้คๆณ, Euclidean algorithm) ๋๋ ์ ํด๋ฆฌ๋..
ํ์ด์ฌ์ด๋ ์นํด์ง๊ธฐ ๋ฌธ์์ด์ ๋ค๋ฃจ๋๋ฐ ํธ๋ฆฌํ ๊ธฐ๋ฅ์ ๋ง์ด ์ ๊ณตํ๋ค. ๊ธฐ์กด์ ์๊ณ ์๋ ํจ์๋ก isalpha()๋ผ๋ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ๋ค์๊ณผ ๊ฐ์ ์ฝ๋๋ฅผ ์์ฑํ๋ค. def solution(s): for i in s: if len(s) != 4 and len(s) != 6: return False if i.isalpha(): return False return True ์ ์ฝ๋๋ ๋ฌธ์์ด s๋ฅผ ์ํํ๋ ๊ณผ์ ์ ํํํ๋ฉด์ ์ฝ๊ฐ์ ๋ณด๊ธฐ ํ๋ค ์๋ ์๋ค. ํ์ด์ฌ์์ ์ ๊ณตํ๋ isdiget() ํจ์๋ฅผ ์ด์ฉํด ๋ณด๋ค ๊ฐ๊ฒฐํ๊ฒ ํํํ ์ ์๋ค. ์ฝ๋ def solution(s): return s.isdigit() and len(s) in [4,6]