12079. Зробити рівними


Відправити розв'язок

Бали: 100
Time limit: 2.0s
Memory limit: 500M

Authors:
Problem type
Allowed languages
C++, Java, Pascal, Python

Степан розробляє рольову гру.

Він вирішив написати код, який перевіряє, чи рівні дві карти. У нас є сітки \(A\) і \(B\) з \(H\) горизонтальних рядків і \(W\) вертикальних стовпців. Кожна клітинка сітки містить символ # або . .

Символи, написані на комірці в \(i\)-му рядку зверху та \(j\)-му стовпчику зліва в \(A\) та \(B\), позначаються \(A_{i,j}\) ​ та \(B_{i,j}\) ​ відповідно.

Наступні дві операції називаються вертикальним зсувом і горизонтальним зсувом.

  • Для кожного \(j=1,2,…,W\) одночасно виконайте наступне:

    одночасно замініть \(A_{1,j} ​ ,A_{2,j} ​ ,…,A_{H−1,j} ​ ,A_{H,j}\) ​ на \(A_{2,j} ​ ,A_{3,j} ​ ,…,A_{H,j} ​ ,A_{1,j} ​ \).

  • Для кожного \(i=1,2,…,H\) одночасно виконайте такі дії:

    одночасно замініть \(A_{i,1} ​ ,A_{i,2} ​ ,…,A_{i,W−1} ​ ,A_{i,W}\) ​ на \(A_{I, 2} ​ ,A_{i,3} ​ ,…,A_{i,W} ​ ,A_{i,1 ​}\) .

Чи існує пара цілих невід’ємних чисел \((s,t)\), яка задовольняє наступну умову?

  • Після застосування вертикального зсуву \(s\) разів і горизонтального зсуву \(t\) разів \(A\) дорівнює \(B\).

Тут кажуть, що \(A\) дорівнює \(B\) тоді і тільки тоді, коли \(A_{i,j} ​ =B_{i,j}\) ​ для всіх пар цілих чисел \(( i,j)\) таких, що \(1≤i≤H\) і \(1≤j≤W\).

Виведіть Yes, якщо є така пара чисел, і No в іншому випадку.

Обмеження

  • \(2≤H,W≤30\)
  • \(A_{i,j}\) ​ дорівнює # або ., аналогічно і для \(B_{i,j}\) ​.
  • \(H\) і \(W\) — цілі числа.

Формат вхідних даних

Перший рядок містить цілі числа \(H, W\).

Наступні  \(H\) рядків містять по \(W\) символів \(A_{i,j}\).

Далі наступні  \(H\) рядків містять по \(W\) символів \(B_{i,j}\).

Формат вихідних даних

У вихідний потік виведіть відповідь: Yes або No.

Приклад вхідних даних

4 3
..#
...
.#.
...
#..
...
.#.
...

Приклад вихідних даних

Yes

Вибравши (s,t)=(2,1), результатом буде рівність A і B.

Ми опишемо процедуру, коли вибрано (s,t)=(2,1).

..#
...
.#.
...

-

...
.#.
...
..#

-

.#.
...
..#
...

-

#..
...
.#.
...

Приклад вхідних даних

3 2
##
##
#.
..
#.
#.

Приклад вихідних даних

No

Приклад вхідних даних

4 5
#####
.#...
.##..
..##.
...##
#...#
#####
...#.

Приклад вихідних даних

Yes

Коментарі

Ще немає коментарів.