해결한 사람
0
명
정답률
0.00
%
시간 제한
1000
ms
메모리 제한
245
MB
각각 필요한 프로세서 수와 소비할 연산 전력이 정해진 여러 작업을 실행해야 한다.
아날로그 컴퓨터는 충분히 많이 있으며, 각 컴퓨터에는 어떤 작업이든 실행하기에 충분한 프로세서가 있다. 각 컴퓨터는 한 번에 최대 하나의 작업을 실행할 수 있고, 총 작업 수도 둘을 넘을 수 없다. 첫 번째 작업은 무엇이든 될 수 있지만, 각 컴퓨터의 두 번째 작업은 첫 번째 작업보다 반드시 더 적은 전력을 사용해야 한다. 각 컴퓨터에 1개 이상 2개 이하의 작업을 할당한다. 그런 다음 먼저 각 컴퓨터의 첫 번째 작업을 실행하고, 모든 작업이 완료될 때까지 기다린 뒤, 두 작업이 할당된 각 컴퓨터에서 두 번째 작업을 실행한다.
첫 번째 작업들을 실행하는 동안 모든 컴퓨터에서 사용 중인 프로세서당 평균 연산 전력(현재 실행 중인 모든 작업이 소비하는 전력의 합을 사용 중인 프로세서 수로 나눈 값)이 알려지지 않은 어떤 임계값을 초과하면 전체 시스템이 폭발한다. 두 번째 작업들의 실행에는 제한이 없다. 이를 가능하게 하는 가장 낮은 임계값을 구한다.
문제의 특성상 답에 1000을 곱한 뒤 올림하여 출력해야 한다.
첫 번째 줄에는 작업의 수를 나타내는 하나의 정수 n (1 ≤ n ≤ 50)이 주어진다.
두 번째 줄에는 n개의 정수 a1, a2, ..., an (1 ≤ ai ≤ 108)이 주어지며, 여기서 ai는 i-th 작업에 필요한 전력량을 나타낸다.
세 번째 줄에는 n개의 정수 b1, b2, ..., bn (1 ≤ bi ≤ 100)이 주어지며, 여기서 bi는 i-th 작업이 사용할 프로세서 수이다.
모든 작업을 첫 번째 연산 단계 후 시스템이 폭발하지 않도록 할당할 수 있게 하는 가장 낮은 임계값에 1000을 곱한 뒤 올림한 하나의 정숫값을 출력한다.
6
8 10 9 9 8 10
1 10 5 5 1 10
1160
6
8 10 9 9 8 10
1 1 1 1 1 1
9000
첫 번째 예제에서 최선의 전략은 각 작업을 별도의 컴퓨터에서 실행하는 것이며, 이때 첫 번째 단계의 프로세서당 평균 연산 전력은 9이다.
두 번째 작업에서는 연산 전력이 10과 9인 작업들을 한 컴퓨터에서, 연산 전력이 10과 8인 작업들을 다른 컴퓨터에서, 연산 전력이 9와 8인 작업들을 마지막 컴퓨터에서 실행하는 것이 최선이며, 첫 번째 단계의 프로세서당 평균 연산 전력은 (10 + 10 + 9) / (10 + 10 + 5) = 1.16이다.