반응형 전체 글572 [DFS, BFS] 백준 1043번: 거짓말 / 골드 4 https://www.acmicpc.net/problem/1043 1043번: 거짓말 지민이는 파티에 가서 이야기 하는 것을 좋아한다. 파티에 갈 때마다, 지민이는 지민이가 가장 좋아하는 이야기를 한다. 지민이는 그 이야기를 말할 때, 있는 그대로 진실로 말하거나 엄청나게 www.acmicpc.net import collections n, m = map(int, input().split()) graph = collections.defaultdict(list) p = list(map(int, input().split())) # second line if p[0] == 0: print(m) quit() for i in range(1, p[0]): graph[p[i]].append(p[i+1]) graph[p.. 2021. 7. 26. [다이나믹 프로그래밍] 백준 9251번: LCS / 골드 5 https://www.acmicpc.net/problem/9251 9251번: LCS LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. www.acmicpc.net str1 = input() str2 = input() dp = [[0]*(len(str1)+1) for x in range(len(str2)+1)] for i in range(1, len(str2)+1): for j in range(1, len(str1)+1): if str1[j-1] == str2[i-1]: dp[i][j] = dp[i-1][j-1]+.. 2021. 7. 23. [ 파이썬 python ] 비트 연산을 위해 알아야 할 것들 1. 입력 문자열을 숫자로 바꾸기 "34" 같은 문자열은 쉽게 숫자로 바꿀 수 있다. int로 감싸주기만 하면 된다. num = "34" int(num) 그런데 문자열이 "10111001"와 같이 0과 1만으로 이루어져있는 경우가 있다. 특히 비트 연산을 이용하여 풀어야 하는 문제의 경우 입력을 이와 같이 받게 되는 경우가 종종 생기는데, 그럼 이 문자열을 숫자로 고쳐줘야 한다. 이때 그냥 int로 감싸주면 정수 10111001(1천만 11만 1천 1)로 변환될 것이다. 이렇게 큰 수를 의도한게 아니므로 int로 변환시 이 문자열을 이진수로 인식하라는 명령을 내려줘야 하는데 파이썬에서는 다음과 같이 사용할 수 있다. int 메소드의 두번째 인자로 진법 수를 넘겨주면 된다. a = "10111001" pr.. 2021. 7. 22. [ 최단 경로 ] 백준 14938번: 서강그라운드 / 골드 4 https://www.acmicpc.net/problem/14938 14938번: 서강그라운드 예은이는 요즘 가장 인기가 있는 게임 서강그라운드를 즐기고 있다. 서강그라운드는 여러 지역중 하나의 지역에 낙하산을 타고 낙하하여, 그 지역에 떨어져 있는 아이템들을 이용해 서바이벌을 www.acmicpc.net sol 1) 다익스트라 import heapq import collections n, m, r = map(int, input().split()) items = list(map(int, input().split())) graph = collections.defaultdict(list) for _ in range(r): u, v, w = map(int, input().split()) # start, end.. 2021. 7. 21. [DFS, BFS] 백준 3055번: 탈출 / 골드 5 https://www.acmicpc.net/problem/3055 3055번: 탈출 사악한 암흑의 군주 이민혁은 드디어 마법 구슬을 손에 넣었고, 그 능력을 실험해보기 위해 근처의 티떱숲에 홍수를 일으키려고 한다. 이 숲에는 고슴도치가 한 마리 살고 있다. 고슴도치는 제 www.acmicpc.net import collections x_lim, y_lim = map(int, input().split()) graph = [] visit = [] start = [] target = [] for x in range(x_lim): row = [x for x in input()] graph.append(row) visit.append([False]*len(row)) for y in range(len(row)): .. 2021. 7. 20. [정렬] 백준 1461번 : 도서관 / 골드 5 https://www.acmicpc.net/problem/1461 1461번: 도서관 첫째 줄에 책의 개수 N과, 세준이가 한 번에 들 수 있는 책의 개수 M이 주어진다. 둘째 줄에는 책의 위치가 주어진다. N은 10,000보다 작거나 같은 자연수이고, M은 10,000보다 작거나 같다. 책의 위치 www.acmicpc.net import bisect n, m = map(int, input().split()) books = list(map(int, input().split())) books.sort() i = bisect.bisect_left(books, 0) negatives = books[:i] positives = books[i:] answer = 0 if negatives: pos = 0 whil.. 2021. 7. 19. 이전 1 ··· 55 56 57 58 59 60 61 ··· 96 다음 반응형