용량 확보
면접 대비시간 제한2초메모리 제한512 MB
e GB 이상 용량을 확보하면서 변환하는 세트의 총 크기를 최소화하도록 RAID-1 세트를 고릅니다.
- 난이도
보통10점 중 5점
- 유형
- 동적 계획법
- 정답자
- 아직 제출이 없습니다
문제
NSA는 러시아어와 스페인어 번역 데이터와 전화 도청 파일이 계속 늘어나서, 데이터 센터의 용량을 최대 1 엑사바이트까지 늘리려고 한다.
예산이 넉넉하지 않아 새 디스크는 사지 못한다. 그래서 저장 방식을 바꿔 용량을 확보한다.
모든 서버는 디스크 네 개가 RAID-1을 이루고 있다. RAID-1 세트를 RAID-5 세트로 바꾸면 보관할 수 있는 용량이 세 배가 된다.
데이터 센터에는 RAID-1 세트가 n개 있다. 세트 i는 크기가 인 디스크로 이루어져 있고 데이터를 GB 보관한다. 이 세트를 RAID-5로 바꾸면 GB를 보관하므로, 세트 i를 변환하면 전체 용량이 GB 늘어난다.
변환하는 세트의 크기 합이 최소가 되도록 세트를 골라서 용량을 e GB 이상 더 확보하는 프로그램을 작성하시오.
예를 들어 디스크의 크기가 이면 RAID-1 세트는 4 GB(부터 까지)를, RAID-5 세트는 GB(부터 까지)를 저장한다.
입력
첫째 줄에 테스트 케이스의 개수가 주어진다. 테스트 케이스는 100개를 넘지 않는다.
각 테스트 케이스의 첫째 줄에는 RAID-1 세트의 수 n과 확보해야 하는 용량 e가 주어진다. (, )
둘째 줄에는 각 세트의 크기 부터 까지가 주어진다. ()
출력
각 테스트 케이스마다 변환해야 하는 용량의 최솟값을 GB 단위로 한 줄에 출력한다. 어떻게 변환해도 용량을 e GB만큼 더 확보하지 못하면 FULL을 출력한다.
힌트
- 예제의 첫 번째 케이스는 세트 하나만 변환하면 된다. 전체 용량은 1500 + 500 = 2000 GB가 된다.
- 두 번째 케이스는 600 GB 세트와 700 GB 세트를 변환한다. 400 + 600 + 700 + 1000 = 2700 GB이던 용량이 400 + 1800 + 2100 + 1000 = 5300 GB가 된다. 나머지 조합은 변환하는 용량이 더 크다.
- 세 번째 케이스는 필요한 용량을 확보하지 못한다.