Олимпиадный тренинг

Задача . B. Пашмак и цветы


Пашмак решил подарить Пармиде пару цветов из своего сада. В саду растет n цветов, красота i-го из них равна bi. Пармида — девушка необычная, она необязательно хочет получить два самых красивых цветка. Она хочет получить такие два цветка, разница красот которых максимально возможная!

Ваша задача — написать программу, которая посчитает два значения:

  1. Максимальную разность красот двух цветов из сада Пашмака.
  2. Сколько существует способов выбрать два цветка из сада, чтобы разность их красот была максимально возможной. Два способа считаются различными тогда и только тогда, когда хотя бы один цветок выбран в одном из них и не выбран во втором.
Входные данные

В первой строке записано целое число n (2 ≤ n ≤ 2·105). В следующей строке записано n целых чисел через пробел b1, b2, ..., bn (1 ≤ bi ≤ 109).

Выходные данные

В единственной строке выведите два целых числа — максимальную разность красот и количество способов ее получить.

Примечание

В третьем примере максимальная разность красот равна 2. Существует 4 способа ее получить:

  • выбрать первый и второй цветки;
  • выбрать первый и пятый цветки;
  • выбрать четвертый и второй цветки;
  • выбрать четвертый и пятый цветки.

Примеры
Входные данныеВыходные данные
1 2
1 2
1 1
2 3
1 4 5
4 1
3 5
3 1 2 3 1
2 4

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя