Перше, що треба зробити — перевірити, що поля відрізняється не більше ніж в одній позиції. Якщо в більше ніж одній, то неможливо за $$$1$$$ крок змінити два поля, і відповідь NO. Якщо два поля рівні, то відповідь YES, бо можна отримати поле $$$B$$$ не зробивши жодного кроку.
Тепер маємо позицію $$$(x,y)$$$ яка відрізняється у двох полях. Перевіримо, чи $$$A_{x,y}$$$ = '.', якщо ні, то неможливо поставити знак в непусте поле, і відповідь NO. Інакше, подивимось на те, хто мав ходити наступним у полі $$$A$$$, хрестики чи нулики? Це можна зробити порахувавши кількість нуликів і хрестиків, якщо рівно, то хрестики, інакше нулики. Залишається лише перевірити, що поставилось саме те, що треба було.