본문 바로가기
728x90
반응형

그리디8

2022.02.16 [백준] (python 파이썬) 강의실 배정 https://www.acmicpc.net/problem/11000 11000번: 강의실 배정 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (0 ≤ Si < Ti ≤ 109) www.acmicpc.net 풀이 이 문제를 풀기 위해서는 두가지를 생각해주어야 한다. 1. 현재 회의실에서 진행되고 있는 회의 종료시간보다 시작시간이 빠른 경우 회의실을 하나 더 개설해야 한다. 2. 현재 회의 종료시간보다 시작시간이 늦은 경우 해당 회의실에서 이어서 회의가 가능하다. 회의 시작, 종료시간을 arr에 담아 준다. 이 후, arr을 정렬해주고 첫번째 회의 종료시간을 heap에 담아 다음 회의 시작시간과 비교해준다. 1. 두번째 회의 시작시간이 첫번째 종료시.. 2022. 2. 16.
2022.02.15 [백준] (python 파이썬) 시험 감독 https://www.acmicpc.net/problem/13458 13458번: 시험 감독 첫째 줄에 시험장의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 각 시험장에 있는 응시자의 수 Ai (1 ≤ Ai ≤ 1,000,000)가 주어진다. 셋째 줄에는 B와 C가 주어진다. (1 ≤ B, C ≤ 1,000,000) www.acmicpc.net 풀이 코드 풀이 6 : 시험장의 인원이 B보다 작으면 총감독관 혼자 감시가 가능하므로 sum증가시키고 continue해서 다음 반복문으로 넘어감 8 : 만약 시험장의 인원이 B보다 크면 A[i]-=B, sum 1증가. 이유는 총감독관은 한 시험장에 1명만 있을 수 있기 때문에 12 : A[i]-1을 해주는 이유는 A[i]를C으로 나누고 나서.. 2022. 2. 15.
2022.02.15 [백준] (python 파이썬) 캠핑 https://www.acmicpc.net/problem/4796 4796번: 캠핑 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, L, P, V를 순서대로 포함하고 있다. 모든 입력 정수는 int범위이다. 마지막 줄에는 0이 3개 주어진다. www.acmicpc.net 풀이 이 문제는 P일 동안 L일만 연속해서 캠핑장을 사용할 수 있다. 그래서 P일이 사이클이 된다. num은 P일의 사이클이 면번 돌아가는지를 뜻한다. num2는 휴가를 받은 V일동안 P가 num번 도는 사이클을 뺀 날이다. 여기서 if문을 넣어 num2>L일 때, num=L이라는 조건을 넣었는데 이는 만약 나머지가 L일 보다 크면 L일보다 캠핑장을 더 연속해서 사용하는게 되기 때문이다. 예.. 2022. 2. 15.
2022.02.15 [백준] (python 파이썬) 신입 사원 https://www.acmicpc.net/problem/1946 1946번: 신입 사원 첫째 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 20)가 주어진다. 각 테스트 케이스의 첫째 줄에 지원자의 숫자 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개 줄에는 각각의 지원자의 서류심사 성 www.acmicpc.net 풀이 이 문제에서 지원자의 범위가 10만이라서 이중 for문을 쓰면 시간 초과가 발생한다. 그래서 우선 지원자의 순위를 arr에 저장하고 서류 순위로 정렬한다. 그러면 arr[0]의 지원자는 서류는 1등 이므로 무조건 합격한다. arr[0]지원자의 면접순위를 min변수에 대입하고 이와 비교해서 기준의 지원자보다 면접순위가 높으면 합격한다. 이 때 만약 min보다 면접순위가 높.. 2022. 2. 15.
728x90
반응형