๐ฅ Silver3 https://www.acmicpc.net/problem/1063 โ
์ ๋ต ํ์ดimport sysinput = sys.stdin.readlineking, stone, n = input().rstrip().split()# ์ด๋ ๋ฐฉํฅ (row,col)move = { 'R': (0, 1), 'L': (0, -1), 'B': (1, 0), 'T': (-1, 0), 'RT': (-1, 1), 'RB': (1, 1), 'LT': (-1, -1), 'LB': (1, -1)}cols = {'A': 0, 'B': 1, 'C': 2, 'D': 3, 'E': 4, 'F': 5, 'G': 6, 'H': 7} #{0:'A'}reversed_cols = {v: k for k, v in cols...
๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ
๐ฅ Silver5https://www.acmicpc.net/problem/1251 import sysfrom itertools import combinationsinput = sys.stdin.readlineword = list(input().strip())word_length = len(word)result = set()for i in range(1, word_length - 1): for j in range(i+1, word_length): first = word[:i] sec = word[i:j] thrid = word[j:] # reverse first.reverse() sec.reverse() thr..
๐ฅ Bronze3https://www.acmicpc.net/problem/2061 โ 1์ฐจ ํ์ดimport mathimport sysfrom itertools import permutations# ๋ ์์ ๊ตฌํ๊ธฐ# ๋ ์์๊ฐ l ์ด์์ธ์ง ํ์ธ# O - good# X - ๋ ์์ ์์ ์ถ๋ ฅinput = sys.stdin.readlinek, l = map(int, input().rstrip().split())for divisor in range(l,k): # ๋ ์์ ์ฐพ๊ธฐ if k%divisor==0: num2=k//divisor num1=divisor if num2์ฒ์์ ์๊ฐํ๋ ๋ฐฉ์์ ์ฃผ์ด์ง k=143๋ฅผ ์์ธ์๋ถํด ํ์๋ ์ถ์ถ๋๋ ๋ ๊ฐ์ด ๋ชจ๋ l์ด์์ด..
๐ฅ Bronze2 https://www.acmicpc.net/problem/1440 โ
์ ๋ตํ์ดimport sysfrom itertools import permutations# ๊ฐ๋ฅํ 3๊ฐ์ง ๋ชจ๋ ์กฐํฉ ์์ฑ ์์ (permutations)# 1~12์๊ฐ ์๋ H ์ ์ธinput=sys.stdin.readlinetimes=map(int,input().rstrip().split(':')) #์ ๋ถ ์ดresult=0for i,comb in enumerate(permutations(times,3)): # ์ ํจ์ฑ ๊ฒ์ฌ if comb[0]>59 or comb[1]>59 or comb[2]>59 : break print(comb) if 0์ฒ์์ ์ค๋ณต์ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๋์ค ์์๊ธฐ์ c..
๐ ์ค๋ ์งํ๋ ๊ฐ์์์ ํ์ตํ ๋ด์ฉ์ ๋ฌด์์ธ๊ฐ์? ์๊ณ ๋ฆฌ์ฆ 2์ฃผ์ฐจ๋ฅผ ์ด๋๋ง ๋ง๋ฌด๋ฆฌํ๋ฉด์, ๋๋ฒ์งธ ์ฝ๋ฉํ
์คํธ๋ฅผ ์ค์ ์ ์์ํ๊ณ ๋ณต์ต์ ์๊ฐ๊ณผ ๊ธฐ์ ๋ฉด์ ์ค๋น์๊ฐ์ ๊ฐ์ก๋ค.์ด๋ฒ์ฃผ์ฐจ์์ ์ค์ํ ์๊ณ ๋ฆฌ์ฆ๋ค์ ๋ง์ด ๊ณต๋ถํ๋๋ฐ, ์ด์ ๋ฐฐ์ด ๊ทธ๋ํํ์.. BFS,,,DFS์ ๊ธฐ์ต์ด ๋๋ฌด ๊ฐ๋ ฌํ๋๋ฐ์ค๋ ์ฝํ
์์๋ ์ฃผ๋ก ๊ทธ๋ํ ํ์ ๋ฌธ์ ๊ฐ ๋ง์ด๋์๋ค.์งง์ ์ผ์ฃผ์ผ๋์ ์์ ์ ์ด๋ถํ์์ด๋ ๊ทธ๋ํํ์๊ฐ์ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ํ์ด๋ณธ์ ๋ ์์๊ณ , ์ด๋ก ๋ง ์๊ณ ์์ง๋ณด๊ธฐ๋งํด๋ ๊ฒ์ด๋๋ ์กด์ฌ์๋๋ฐ ์ผ์ฃผ์ผ์ด ๊ฝค๋ ํฐ ๋ณํ๋ฅผ ๊ฐ์ ธ๋ค ์ฃผ์๋ค. ๐ ์ด๋ฒ ์ฃผ ์งํ๋ ํ ์คํฐ๋์์ ์ป์ ์ธ์ฌ์ดํธ๋ ๋ฌด์์ธ๊ฐ์?์ด๋ฒ์ฃผ ํ์คํฐ๋๋ฅผ ์งํํ๋ฉด์, ํ์คํ ์ ๋ฒ์ฃผ์ฐจ๋ณด๋จ ์ด๋ ค์ด ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ์ ํ๋ฉด์ ์๊ฐ์ ์ฌ์ ๊ฐ ๋ง์ด ์๋ค๋ณด๋์ด์ ์ฃผ์ฐจ๋ ๋ฌธ์ ํ์ด์ ์๊ฐ์ด..
๐ฅ Gold4https://www.acmicpc.net/problem/13975 โ 1์ฐจํ์ดimport sysfrom collections import dequeinput = sys.stdin.readlinen=int(input())for _ in range(n): m=int(input()) nums=sorted(list(map(int,input().strip().split()))) queue=deque(nums) result=0 while len(queue)>=1: if len(queue)==1: print(result) break temp=queue[0]+queue[1] ..
๐ฅ Silver1https://www.acmicpc.net/problem/1697 ๋ฉ๋ชจ๋ฆฌ์คํ์๊ฐ40316KB252ms โ
์ ๋ตํ์ดimport sysfrom collections import dequeinput = sys.stdin.readline# ์ต๋จ๊ฒฝ๋ก ์ฐพ๊ธฐ=์ต๋จ์๊ฐ ์ฐพ๊ธฐ (bfs)def bfs(start,target): global cur queue=deque([start]) visited[start]=0 #์์์ ์ ์ด๋๊ฑฐ๋ฆฌ=0 while queue: cur=queue.popleft() if cur==target: return visited[cur] for i in range(3): if i ์๋น..
๐ฅ Silver1https://www.acmicpc.net/problem/21937 โ
์ ๋ต์ฝ๋import sysinput = sys.stdin.readlinedef dfs(idx): stack.append(idx) visited[idx] = True while stack: cur = stack.pop() for i in graph[cur]: if not visited[i]: stack.append(i) visited[i] = True answer.add(i)n, m = map(int, input().strip().split())graph = [[] fo..