Зауважте, що цей виклик не потребує обробки чи розуміння складних чисел.
З огляду на не порожню квадратну матрицю, де кожен елемент є двоелементним цілим списком (Re, Im), визначте (даючи будь-які значення truthy / falesy або будь-які два послідовні значення), чи є це ермітовою матрицею.
Зауважте, що вхід - це тривимірний масив цілих чисел; не 2D масив складних чисел. Якщо ваша мова не може приймати 3D-масив безпосередньо, ви можете взяти плоский список (і форма n × n або n × n × 2, якщо це допомагає).
Матриця є ермітовою, якщо вона дорівнює її власному кон'юговому транспозиту . Іншими словами, якщо перевести його вгору ліворуч до нижньої правої діагоналі та заперечувати другий елемент усіх двоелементних аркушів листів, він ідентичний вхідній матриці. Зауважте, що порядок перегортання та заперечення не має значення, тому ви можете спробувати заперечити спочатку, а потім - згортати.
Приклад ходу
У цьому прикладі використовується JSON із зайвим пробілом для полегшення читання:
[[ [2, 0] , [2, 1] , [4, 0] ],
[ [2,-1] , [3, 0] , [0, 1] ],
[ [4, 0] , [0,-1] , [1, 0] ]]
Транспонируйте (переверніть діагональ NW — SE):
[[ [2, 0] , [2,-1] , [4, 0] ],
[ [2, 1] , [3, 0] , [0,-1] ],
[ [4, 0] , [0, 1] , [1, 0] ]]
Негативні другі елементи листів:
[[ [2, 0] , [2, 1] , [4, 0] ],
[ [2,-1] , [3, 0] , [0, 1] ],
[ [4, 0] , [0,-1] , [1, 0] ]]
Оскільки це ідентично вводу, матриця є гермітською.
Тестові справи
Ермітик
[[[2,0],[2,1],[4,0]],[[2,-1],[3,0],[0,1]],[[4,0],[0,-1],[1,0]]]
[[[1,0],[2,0]],[[2,0],[1,0]]]
[[[1,0],[2,-3]],[[2,3],[1,0]]]
[[[42,0]]]
Неермітинець
[[[2,0],[2,1],[4,0]],[[2,-1],[3,0],[0,1]],[[4,0],[0,-1],[1,-1]]]
[[[0,1],[0,2]],[[0,2],[0,1]]]
[[[1,0],[2,3]],[[2,3],[1,0]]]
[[[3,2]]]