Введение:
В общем , мы обычно говорим о четырех измерениях: три измерения пространства для x
, y
и z
; и одно временное измерение. Ради этой задачи однако, мы разделим времени измерения в трех , а также: past
, present
, и future
.
Входные данные:
Два ввода-списка. Одна содержит целочисленные x,y,z
координаты, а другая содержит целые годы.
Вывод:
Один из любых четырех отличных и постоянных выходов по вашему выбору. Один, чтобы указать выход space
; один, чтобы указать результат time
; один, чтобы указать результат both space and time
; и один, чтобы указать результат neither space nor time
.
Мы укажем, что мы перешли ко всем трем измерениям пространства, если различия целых кортежей не равны 0 для всех трех измерений.
Мы укажем, что мы прошли все три измерения времени, если есть хотя бы один год в прошлом, хотя бы один год в будущем и хотя бы один год, равный текущему году (как и в настоящем).
Пример:
Входные данные:
Список координат: [{5,7,2}, {5,3,8}, {-6,3,8}, {5,7,2}]
Годовой список:[2039, 2019, 2018, 2039, 2222]
Выход:
постоянный дляspace
Почему?
Эти x
координаты [5,5,-6,5]
. Поскольку они не все одинаковые, мы прошли x
космическое измерение.
Эти y
координаты [7,3,3,7]
. Поскольку они не все одинаковые, мы также прошли y
пространственное измерение.
Эти z
координаты [2,8,8,2]
. Поскольку они не все одинаковые, мы также прошли z
пространственное измерение.
Текущий год есть 2018
. До этого нет лет, поэтому мы не посетили past
измерение времени.
В 2018
годовом списке есть подарок, поэтому мы посетили present
временное измерение.
Существует несколько лет выше 2018
( [2039, 2019, 2039, 2222]
), поэтому мы также посетили future
измерение времени.
Поскольку мы посетили все три space
измерения, но только два из трех time
измерений, результат будет только (константа для) space
.
Правила вызова:
- Вы можете использовать любые четыре различных и постоянных выхода для четырех возможных состояний.
- Ввод может быть в любом разумном формате. Список координат может быть кортежами, внутренними списками / массивами размером 3, строками, объектами и т. Д. Список лет может быть списком объектов даты вместо целых чисел, если это будет полезно для вашего количества байтов.
- Вы можете предположить, что
x,y,z
координаты будут целыми числами, поэтому нет необходимости обрабатывать десятичные числа с плавающей запятой. Любой изx
,y
и / илиz
координат могут быть отрицательными значениями, хотя. - Вы не можете взять предзаказанные списки ввода. Списки ввода должны быть в порядке, указанном в тестовых примерах.
- Вы можете предположить, что все значения года будут в диапазоне
[0,9999]
; и вы можете предположить, что все координаты находятся в диапазоне[-9999,9999]
. - Если у вашего языка нет ЛЮБОГО способа получить текущий год, но вы все равно хотели бы выполнить это задание, вы можете использовать его в качестве дополнительного ввода и отметить свой ответ как (неконкурентный) .
Основные правила:
- Это код-гольф , поэтому выигрывает самый короткий ответ в байтах.
Не позволяйте языкам кода-гольфа отговаривать вас от публикации ответов на языках, не относящихся к кодексу. Попробуйте найти как можно более короткий ответ для «любого» языка программирования. - Стандартные правила применяются к вашему ответу с правилами ввода / вывода по умолчанию , поэтому вы можете использовать STDIN / STDOUT, функции / метод с правильными параметрами и типом возврата, полные программы. Ваш звонок.
- По умолчанию лазейки запрещены.
- Если возможно, добавьте ссылку с тестом для вашего кода (например, TIO ).
- Кроме того, добавление объяснения для вашего ответа настоятельно рекомендуется.
Тестовые случаи:
Coordinates-input: [{5,7,2}, {5,3,8}, {-6,3,8}, {5,7,2}]
Years-input: [2039, 2019, 2018, 2039, 2222]
Output: space
Coordinates-input: [{0,0,0}, {-4,-4,0}, {-4,2,0}]
Years-input: [2016, 2019, 2018, 2000]
Output: time
Coordinates-input: [{-2,-2,-2}, {-3,-3,-3}]
Years-input: [2020, 1991, 2014, 2018]
Output: both
Coordinates-input: [{5,4,2}, {3,4,0}, {1,4,2}, {9,4,4}]
Years-input: [2020, 1991, 2014, 2017, 2019, 1850]
Output: neither
[0,9999]
хорошо (и [-9999,9999]
для координат тоже хорошо.