Дан список диапазонов дат в r
качестве входных, выходных или возвращаемых диапазонов, не найденных в r
.
Ради этого примера ввод будет в YYYY-MM-DD
формате.
Допустим, у вас есть три диапазона дат:
[2019-01-01, 2019-02-01]
[2019-02-02, 2019-04-05]
[2019-06-01, 2019-07-01]
Вы можете видеть, что между 2019-04-05
и 2019-06-01
.
Результатом будет этот разрыв: [2019-04-06, 2019-05-31]
правила
- Ввод и вывод могут быть в любой разумной форме даты или коллекции, если они согласованы.
- Предположим, что вход не упорядочен.
- Ваш диапазон дат не обязательно должен быть
[latest, earliest]
, но он должен следовать правилу 2. - Предположим, что во входных данных нет перекрывающихся дат
Тестовые случаи:
Входные данные: [[2019-01-01, 2019-02-01],[2019-02-02, 2019-04-05],[2019-06-01, 2019-07-01]]
Выход: [[2019-04-06, 2019-05-31]]
Входные данные: [[2019-01-01, 2019-02-01],[2018-02-02, 2018-04-05],[2019-06-01, 2019-07-01]]
Выход: [[2018-04-06, 2018-12-31], [2019-02-02, 2019-05-31]]
Входные данные: [[2019-01-01, 2019-02-01],[2019-02-02, 2019-03-02],[2019-03-03, 2019-07-01]]
Выход: []
Входные данные: [[2019-01-01, 2019-02-01], [2019-11-02, 2019-11-20]]
Выход: [[2019-02-02, 2019-11-01]]
Входные данные: [[2019-01-01, 2019-02-01],[2019-02-03, 2019-04-05]]
Выход: [[2019-02-02, 2019-02-02]]
или[[2019-02-02]]
YYYY-MM-DD
как текущий формат является чужим для многих, и его еще труднее разобрать из-за использования маленьких дней месяца≤12.