Операції зі стовпцями та літерою Г
Обмеження: 1 сек., 512 МіБ
Задано матрицю \(a\) з \(n\) рядків та \(m\) стовпців, що складається з нулів та одиниць.
З матрицею можна виконувати такі операції будь-яку, можливо нульову, кількість разів.
Вибрати число \(j\) (\(1 \le j \le m\)) та змінити значення всіх елементів в \(j\)-ому стовпці на протилежні (нулі на одиниці, а одиниці — на нулі).
Вибрати числа \(i\) та \(j\) (\(1 \le i \le n - 1, 1 \le j \le m - 1\)), та замінити на протилежні значення трьох елементів \(a_{i, j}, a_{i + 1, j}, a_{i, j + 1}\), які розташовані літерою Г.
Визначте, чи можна перетворити \(a\) на нульову матрицю за будь-яку кількість операцій.
Розв’яжіть цю задачу для \(t\) матриць.
Вхідні дані
У першому рядку задано ціле число \(t\) — кількість матриць, для яких потрібно розв’язати задачу.
У наступних \(t\) блоках задано описи матриць.
У першому рядку кожного блоку задано два цілих числа \(n\) і \(m\) — кількість рядків та стовпців матриці.
У наступних \(n\) рядках блоку задано матрицю, що складається з нулів та одиниць, розділених пропусками.
Вихідні дані
У \(t\) рядках виведіть відповіді
для кожної матриці. Якщо матрицю можна перетворити на нульову, виведіть
у відповідному рядку Yes, інакше — No.
Обмеження
\(1 \le t \le 100\),
\(1 \le n, m \le 1000\),
Сума \(n\) та \(m\) по всіх тестах не перевищує \(2000\),
\(a_{i, j} \in \{\verb|0|, \verb|1|\}\).
Приклади
| Вхідні дані (stdin) | Вихідні дані (stdout) |
|---|---|
| 2 2 2 0 1 1 0 3 4 0 1 1 1 1 0 0 1 1 0 0 1 | No Yes |
Надіслати розв'язок
| Element Type | Створено | Хто | Задача | Компілятор | Результат | Час (сек.) | Пам'ять (МіБ) | № | Дії |
|---|
| Element Type | Створено | Хто | Задача | Компілятор | Результат | Час (сек.) | Пам'ять (МіБ) | № | Дії |
|---|