๐ Algorithm/Python
[Python] ๋ฐฑ์ค 1260
๋จ์ํ DFS์ BFS๋ฅผ ๊ตฌํํ์ฌ ์ถ๋ ฅํ๋ฉด ๋๋ค. ๊ทธ๋ํ ๊ตฌํ graph = [[0]*(N+1) for x in range(N+1)] for i in range(M): temp = list(map(int, input().split(' '))) graph[temp[0]][temp[1]] = 1 graph[temp[1]][temp[0]] = 1 ๊ทธ๋ํ๋ 2์ฐจ์ ๋ฐฐ์ด๋ก ๊ตฌํํ์๋ค. ๋ ์ ์ ์ ์ฐ๊ฒฐํ๋ ๊ฐ์ ์ 1๋ก ๋ฐ๊ฟ์ค๋ค. ์๋ฐฉํฅ ๊ทธ๋ํ์ด๊ธฐ ๋๋ฌธ์ ๋ ๋ฒ ๋ฐ๊ฟ์ฃผ์ด์ผ ํ๋ค. ์๋ฅผ๋ค์ด ๊ฐ์ ์ด 1๊ณผ 2๋ฅผ ์ฐ๊ฒฐํ๋ค๋ฉด, 2์ฐจ์ ๋ฐฐ์ด์ ๋ค์๊ณผ ๊ฐ๋ค. DFS ๊ตฌํ ํ์์ ์์ํ ์ ์ ์ ํ๋ผ๋ฏธํฐ๋ก ๋ฐ์ dfs๋ฅผ ์ํํ๋ ํจ์์ด๋ฉฐ, recursive๋ก ๊ตฌํํ์๋ค. graph์์ ์ฐ๊ฒฐ๋ ์ ์ ์ ๋ฆฌ์คํธ๋ก ๋ง๋ค๊ณ , ๋ฆฌ์คํธ์ ํด๋นํ..
[Python] ๋ฐฑ์ค 2231
์์ ํ์ํ๋ brute force ๋ฌธ์ ์ด๋ค. ๋จผ์ 1๋ถํฐ N๊น์ง ๋ชจ๋ ๊ณ ๋ คํ๋ ๋ฐฉ๋ฒ์ด์๋ค. ๋ด๊ฐ ์ฒ์์ผ๋ก ์ ์ถํ ๋ต์ด๊ธฐ๋ ํ๋ค. ์๋ฅผ๋ค์ด 256์ ์์ฑ์๋ฅผ ์ฐพ๊ธฐ์ํด 1๋ถํฐ ์์ฐจ์ ์ผ๋ก ํ์ํด ์์ฑ์๊ฐ ๋์ค๋ฉด ์ข ๋ฃํ๋ค. import sys N = int(input()) def Constructor(M): result = M devide = list(str(M)) for i in devide: result += int(i) return result if N < 10 : print(0) else: num = 10 while M