분류 전체보기 (402) 썸네일형 리스트형 [백준 17409번] 증가 수열의 개수 (Python3) def update(i,v): while i [백준 23820번] MEX (Python3) def solve(): check = [0]*(M+1) for i in range(N): if nums[i]*nums[i]>M: break for j in range(i,N): if (n:=nums[i]*nums[j])>M: break check[n] = 1 print(check.index(0)) input() nums = sorted({*map(int,input().split())}) N = len(nums); M = 2*10**6+3 solve() 브루트 포스로 해결하였다. 일단 풀이를 설명하면, 1. 입력받은 숫자를 중복을 제거하고 정렬한다. (같은 인덱스를 뽑을 수 있어 중복숫자가 필요없다) 2. 2000003 크기의 배열을 만들고, 2중 for문을 돌면서 만들 수 있으면 check한다. 3. 체.. [백준 1168번] 요세푸스 문제 2 (Python3) def update(i,v): while i [백준 2207번] 가위바위보 (Python3) import sys input = sys.stdin.readline sys.setrecursionlimit(10**4) def DFS(now): global id,s visited[now] = nowid = id stack.append(now) for next in graph[now]: if scc[next]: continue if not visited[next]: id += 1 DFS(next) visited[now] = min(visited[now],visited[next]) if visited[now]==nowid: s += 1 while stack: x = stack.pop() scc[x] = s if x==now: break def check(): for i in range(1,N+1): if .. [백준 16367번] TV Show Game (Python3) import sys input = sys.stdin.readline sys.setrecursionlimit(10**4) def DFS(now): global id,s visited[now] = nowid = id stack.append(now) for next in graph[now]: if sccnum[next]: continue if not visited[next]: id += 1 DFS(next) visited[now] = min(visited[now],visited[next]) if visited[now]==nowid: s = len(scc); scc.append([]) while stack: x = stack.pop() sccnum[x] = s; scc[-1].append(x) if x==now.. [백준 3648번] 아이돌 (Python3) import sys input = sys.stdin.readline def DFS(now): global id,s visited[now] = nowid = id stack.append(now) for next in graph[now]: if scc[next]: continue if not visited[next]: id += 1 DFS(next) visited[now] = min(visited[now],visited[next]) if visited[now]==nowid: s += 1 while stack: x = stack.pop() scc[x] = s if x==now: break def check(): for i in range(1,N+1): if scc[i]==scc[-i]: return "no" .. [백준 11281번] 2-SAT - 4 (Python3) import sys input = sys.stdin.readline sys.setrecursionlimit(10**5) def DFS(now): global id,s visited[now] = nowid = id stack.append(now) for next in graph[now]: if sccnum[next]: continue if not visited[next]: id += 1 DFS(next) visited[now] = min(visited[now],visited[next]) if visited[now]==nowid: s = len(scc); scc.append([]) while stack: x = stack.pop() sccnum[x] = s; scc[-1].append(x) if x==now.. [백준 11280번] 2-SAT - 3 (Python3) import sys input = sys.stdin.readline sys.setrecursionlimit(10**5) def DFS(now): global id,s visited[now] = nowid = id stack.append(now) for next in graph[now]: if scc[next]: continue if not visited[next]: id += 1 DFS(next) visited[now] = min(visited[now],visited[next]) if visited[now]==nowid: s += 1 while stack: x = stack.pop() scc[x] = s if x==now: break def check(): for i in range(1,N+1): if .. 이전 1 ··· 6 7 8 9 10 11 12 ··· 51 다음