Петя решил узнать, когда программисту выгоднее всего искать работу. Конечно, когда больше всего открыто вакансий. Он выгрузил в текстовый файл время открытия и закрытия всех подходящих вакансий за прошлый год. Теперь нужно определить период времени, когда открытых вакансий было больше всего.
Считаем, что:
- начальное и конечное время всегда присутствуют;
- начальное время всегда меньше или равно конечному;
- начальное и конечное время включены в интервал.
Входные данные
Входная информация поступает из стандартного ввода, в первой строке приходит 1 число - количество вакансий. Каждая из следующих строк содержит информацию о вакансии в виде двух чисел – начальное и конечное время, они разделены пробелом. Время задается в секундах (https://ru.wikipedia.org/wiki/Unix-время). Некорректные данные на вход не поступают, дополнительные проверки не требуются.
Выходные данные
В качестве ответа в стандартный вывод через пробел нужно вывести два числа: количество найденных интервалов и сумму длительности интервалов в секундах (начальная и конечная секунды должны быть включены в интервал).
Пример 1
Входные данные:
1
1595862781 1595862785
Выходные данные: 1 5
Пример 2
Входные данные:
2
1595862781 1595862783
1595862782 1595862784
Выходные данные: 1 2
Пример 3
Входные данные:
2
1595862781 1595862782
1595862783 1595862784
Выходные данные: 2 4
Для работы со стандартным потоком ввода в JS используйте require('readline'), а для работы со стандартным потоком вывода - console.log(String(data)).
Пример ввода-вывода на JS:
const readline = require('readline');
const rl = readline.createInterface(process.stdin, process.stdout);
rl.on('line', (line) => {
// Введенная строка в переменной line, тут можно написать решение
console.log(String(result));
rl.close();
return;
}).on('close', () => process.exit(0));
| Гарантия на работу | 1 год |
| Средний балл | 4.53 |
| Стоимость | Назначаете сами |
| Эксперт | Выбираете сами |
| Уникальность работы | от 70% |