У цьому виклику вам дадуть квадратну матрицю A
, вектор v
та скаляр λ
. Вам потрібно буде визначити, чи (λ, v)
відповідає власне пара A
; тобто чи ні Av = λv
.
Точковий продукт
Точковий добуток двох векторів - це сума множення елементів. Наприклад, крапковий добуток наступних двох векторів:
(1, 2, 3) * (4, 5, 6) = 1*4 + 2*5 + 3*6 = 32
Зауважте, що крапковий добуток визначається лише між двома векторами однакової довжини.
Матричне-векторне множення
Матриця - це 2D сітка значень. Матриця m
x n
має m
рядки та n
стовпці. Ми можемо уявити матрицю m
x n
як m
вектори довжини n
(якщо взяти рядки).
Множення матричного вектора визначається між матрицею m
x n
та n
вектором розміру . Якщо помножити матрицю m
x n
і n
вектор розміру , отримаємо m
вектор розміру . Значення i
-го у векторі результатів - це крапковий добуток i
-го рядка матриці та вихідний вектор.
Приклад
1 2 3 4 5
Let A = 3 4 5 6 7
5 6 7 8 9
1
3
Let v = 5
7
9
Якщо помножити матрицю і вектор Av = x
, отримаємо наступне:
x 1 = A T 1 * v /* AT1 means the first row of A; A1 would be the first column */
= (1,2,3,4,5) * (1,3,5,7,9) = 1 * 1 + 2 * 3 + 3 * 5 + 4 * 7 + 5 * 9 = 1 + 6 + 15 + 28 + 45 = 95
x 2 = A T 2 * v = (3,4,5,6,7) * (1,3,5,7,9) = 3 * 1 + 4 * 3 + 5 * 5 + 6 * 7 + 7 * 9 = 3 + 12 + 25 + 42 + 63 = 145
x 3 = A T 3 * v = (5,6,7,8,9) * (1,3,5,7,9) = 5 * 1 + 6 * 3 + 7 * 5 + 8 * 7 + 9 * 9 = 5 + 18 + 35 + 56 + 81 = 195
Отже, ми отримуємо Av = x = (95, 145, 195)
.
Скалярне множення
Множення скаляра (одиничне число) і вектора - це просто елементне множення. Наприклад, 3 * (1, 2, 3) = (3, 6, 9)
. Це досить просто.
Власні значення та власні вектори
Враховуючи матрицю A
, ми говоримо, що λ
це власне значення, що відповідає, v
і v
є власним вектором, що відповідає, λ
якщо і тільки якщо Av = λv
. (Де Av
є множення матричного вектора і λv
скалярне множення).
(λ, v)
є власним паролем.
Технічні характеристики
Вхідні дані
Введення складається з матриці, вектора та скаляра. Вони можуть бути прийняті в будь-якому порядку в будь-якому розумному форматі.
Вихідні дані
Результатом буде значення "химерність / хибність"; truthy тоді і лише в тому випадку, якщо скаляр і вектор - це власне значення з вказаною матрицею.
Правила
- Застосовуються стандартні лазівки
- Якщо у вашій мові існує вбудована версія для підтвердження власного паролю, ви можете не використовувати її.
- Ви можете припустити, що всі числа є цілими числами
Випробування
MATRIX VECTOR EIGENVALUE
2 -3 -1 3
1 -2 -1 1 1 -> TRUE
1 -3 0 0
2 -3 -1 1
1 -2 -1 1 -2 -> TRUE
1 -3 0 1
1 6 3 1
0 -2 0 0 4 -> TRUE
3 6 1 1
1 0 -1 2
-1 1 1 1 7 -> FALSE
1 0 0 0
-4 3 1
2 1 2 2 -> TRUE
2 1 2 -> TRUE
Пізніше додам 4х4.