Вам дан массив A из n строго положительных целых чисел с n ≥ 2 .
Ваша задача - сопоставить каждую запись A i с:
- 1, если A j mod A i нечетно для каждого j такого, что 1 ≤ j ≤ n и j ≠ i
- 2, если A j mod A i четно для каждого j такого, что 1 ≤ j ≤ n и j ≠ i
- 0 иначе (смешанные паритеты)
пример
Для A = [73, 50, 61] имеем:
- 50 мод 73 = 50 , 61 мод 73 = 61 → смешанный
- 73 мод 50 = 23 , 61 мод 50 = 11 → все нечетно
- 73 мод 61 = 12 , 50 мод 61 = 50 → все четные
Следовательно, ожидаемый результат равен [0, 1, 2] .
правила
- Вы можете использовать любые три различных значения (любого типа) вместо 0 , 1 и 2, если они согласованы. Пожалуйста, укажите ваше сопоставление, если вы не используете тот, который описан в конкурсе.
- Если есть какие-либо сомнения по этому поводу, ноль является четным .
- Это код-гольф , поэтому выигрывает самый короткий ответ в байтах!
Контрольные примеры
[ 1, 2 ] --> [ 2, 1 ]
[ 3, 4 ] --> [ 1, 1 ]
[ 1, 2, 3 ] --> [ 2, 1, 0 ]
[ 4, 4, 4 ] --> [ 2, 2, 2 ]
[ 73, 50, 61 ] --> [ 0, 1, 2 ]
[ 941, 459, 533 ] --> [ 1, 0, 0 ]
[ 817, 19, 928, 177 ] --> [ 1, 2, 1, 1 ]
[ 312, 463, 336, 729, 513 ] --> [ 0, 2, 0, 0, 0 ]
[ 53, 47, 33, 87, 81, 3, 17 ] --> [ 0, 0, 0, 1, 0, 2, 0 ]
[1]
, [0, 1]
и [1, 1]
работу?