Напишете програма, която обработва множество от заявки и накрая извежда минимално и максимално време, за което е била обработена заявка.
Заявките идват всяка секунда последователно във времето (време 0, 1, 2, 3 и т.н.), като тяхната обработка зависи от това колко е времето за изчакване на заявката, като заявка с по-малко време се предпочита за обработка.
Пример:
Последователно пристигат заявки с време за изчакване: 3, 2, 1, 4. Първо се започва обработката на първата заявка с време за изчакване 3 (започвайки от време 0, общото време за обработка е 3), като тя докато се обработва, пристигат заявките 2, 1 и 4, като измежду тях с най-малко време за изчакване е 1 (тази заявка вече е изчакала една секунда и и трябва още една секунда за обработка, т.е. общо време за изчакване 2), след това 2 (тази заявка е изчакала вече 3 секунди за да стартира т.е. общо време за изчакване 5 сек) и накрая 4 (тази заявка е изчакала 3 секунди преди започване на обработка, затова общото време за изчакване е 7 сек). Минимално време за обработка = 2, максимално време за обработка = 7.
Input Format
На първия ред получавате цяло положително число
На втория ред получавате цели положителни числа
Constraints
Output Format
На единствен ред на стандартния изход изведете, разделени с интервал, две цели числа Min
и Max
, показващи минималното и максималното време за изчакване на заявка.
Sample Input 0
5
4 5 6 5 5
Sample Output 0
4 23
Sample Input 1
10
8 6 2 10 10 7 7 9 7 5
Sample Output 1
6 67