7 | 10 |
---|---|
6: 42 | 0: 0 |
5: 35 | 1: 10 |
4: 28 | 2: 20 |
3: 21 | 3: 30 |
배분 문제!
빠른 거랑 느린 거랑 있을 때,
3개 있을 때, 한 심사대 끝나면 그거보다 소요시간 작은 것들+기다리는 시간 vs. 방금 끝난거 소요시간 비교해서 가장 작은 거부터 넣음.
근데 남은 사람 수 ≥ 소요시간 작은 것들 개수+1이면 방금 끝난 거에 고민 없이 사람 투입.
사람 넣느냐 마느냐 판단 기준: 심사대 소요시간 + 남은 시간
남은 사람 ≥ 심사대 수이면 웨이팅 없이 즉시 투입.
남은 사람 < 심사대 수이면 남은시간+소요시간 작은 순서대로
min ∑a_iy_i s.t. ∑x_i = n ∑a_iy_i ≥ a_i*x_i for 1≤i≤n y_i ≤ x_i for 1≤i≤n x_i, y_i ≥ 0 x_i, y_i is integer
min(times)이상 max(times) * n이하에서 탐색
mid = 총 시간
mid/n = 인당 평균 소요시간