본문 바로가기
반응형

{ Problem Solving }/Greedy17

[그리디] 백준 1092번 : 배 / 골드 5 https://www.acmicpc.net/problem/1092 1092번: 배 첫째 줄에 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 각 크레인의 무게 제한이 주어진다. 이 값은 1,000,000보다 작거나 같다. 셋째 줄에는 박스의 수 M이 주어진다. M은 10,000보 www.acmicpc.net n = int(input()) transport = list(map(int, input().split())) transport.sort(reverse=True) m = int(input()) box = list(map(int, input().split())) box.sort(reverse=True) if box[0] > transport[0]: print(-1) quit() ans.. 2021. 6. 14.
[그리디] 백준 13904번: 과제 / 골드 3 https://www.acmicpc.net/problem/13904 13904번: 과제 예제에서 다섯 번째, 네 번째, 두 번째, 첫 번째, 일곱 번째 과제 순으로 수행하고, 세 번째, 여섯 번째 과제를 포기하면 185점을 얻을 수 있다. www.acmicpc.net import heapq n = int(input()) lst = [] for i in range(n): lst.append(list(map(int, input().split()))) lst.sort() day = lst[-1][0] # max day q = [] answer = 0 while day > 0: while lst: d, w = lst.pop() if day == d: heapq.heappush(q, -w) else: # put .. 2021. 6. 14.
[그리디] 백준 8980번: 택배 / 골드 3 https://www.acmicpc.net/problem/8980 8980번: 택배 입력의 첫 줄은 마을 수 N과 트럭의 용량 C가 빈칸을 사이에 두고 주어진다. N은 2이상 2,000이하 정수이고, C는 1이상 10,000이하 정수이다. 다음 줄에, 보내는 박스 정보의 개수 M이 주어진다. M은 1이 www.acmicpc.net n, c = map(int, input().split()) m = int(input()) lst = [] for i in range(m): lst.append(list(map(int, input().split()))) lst.sort(key=lambda x: x[1]) capacity = [0]*(n+1) answer = 0 for start, end, load in lst: .. 2021. 6. 14.
[그리디] 백준 2212번: 센서 / 골드 5 https://www.acmicpc.net/problem/2212 2212번: 센서 첫째 줄에 센서의 개수 N(1 2021. 6. 11.
[그리디] 백준 2812번: 크게 만들기 / 골드 5 https://www.acmicpc.net/problem/2812 2812번: 크게 만들기 N자리 숫자가 주어졌을 때, 여기서 숫자 K개를 지워서 얻을 수 있는 가장 큰 수를 구하는 프로그램을 작성하시오. www.acmicpc.net import sys n, k = map(int, input().split()) lst = input() target = n-k answer = "" pick = 0 i = 0 while pick < target: maxnum = -sys.maxsize maxidx = None find = False for j in range(i, pick + k + 1): if lst[j] == '9': answer +='9' pick +=1 i = j +1 find = True break.. 2021. 6. 3.
[그리디] 백준 11000번: 강의실 배정 / 골드5 https://www.acmicpc.net/problem/11000 11000번: 강의실 배정 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (1 ≤ Si < Ti ≤ 109) www.acmicpc.net 아이디어를 떠올리기 힘들다. 우선순위 큐를 생각하면 실마리를 찾을 수 있다. import heapq n = int(input()) lst = [] for i in range(n): lst.append([x for x in map(int,input().split())]) q= [] lst.sort(reverse=True) answer = 0 count = 0 while lst: cls = lst.pop() start, finish = cls[0].. 2021. 6. 2.
반응형