본문 바로가기

Class 52

[9] [Class 5] - 2056 작업 www.acmicpc.net/problem/2056 2056번: 작업 수행해야 할 작업 N개 (3 ≤ N ≤ 10000)가 있다. 각각의 작업마다 걸리는 시간(1 ≤ 시간 ≤ 100)이 정수로 주어진다. 몇몇 작업들 사이에는 선행 관계라는 게 있어서, 어떤 작업을 수행하기 위해 www.acmicpc.net 작업의 우선순위를 두어 처음에는 지나가는 시간을 1씩 올려서 하려고 했는데 그러다보니 큐에 있는 것들이 시간이 다 됐는지를 체크하는게 너무 이상한것 같아서 그만뒀고 먼저 기본 정석이 되는 위상정렬 그래프 구조에서 A를 indegree가 0이 된 작업, B를 A가 끝난 다음에 할 수 있는 작업이라고 생각하면 A가 끝났을 때, B가 걸리는 총 시간 = max(B의 총시간, A가 끝나는 시간 + B가 걸리는.. 2021. 1. 27.
[8] [Class 5] - 백준 1806 부분합 www.acmicpc.net/problem/1806 1806번: 부분합 첫째 줄에 N (10 ≤ N < 100,000)과 S (0 < S ≤ 100,000,000)가 주어진다. 둘째 줄에는 수열이 주어진다. 수열의 각 원소는 공백으로 구분되어져 있으며, 10,000이하의 자연수이다. www.acmicpc.net 팀원 친구들이 레벨 6 풀고 있을때 나는 레벨 5에서 맞왜틀하고있어서 맘이 안좋았다 그치만 역시 꾸준한 노력이 답이기에.. 오늘도 존버.. 연속된 수의 부분합 중에 S 이상이 되는 것 중, 가장 짧은 것의 길이를 구하는 문제 N이 10만이여서 복잡도가 O(NlogN) 이하로 나와야 된다고 생각했고 우선 구간 합을 다 구해놓고, 구간합은 크기에 대해 정렬된 상태이기 때문에 이분 탐색을 이용해서 적절.. 2021. 1. 26.