Сегодня мы сыграем в игру «покрась в красный и белый» (нет, это не гражданская война, это просто цвета канадского флага).
Вам дана таблица $$$n \times m$$$, состоящая из символов «R», «W» и «.». Символ «R» обозначает красную клетку, «W» обозначает белую клетку, а «.» обозначает непокрашенную клетку. Соседями клетки называются клетки, имеющие общую сторону с данной (клетки, имеющие только общий угол, не считаются).
Ваша задача — покрасить непокрашенные клетки в красный или белый так, чтобы у каждой красной клетки были только белые соседи (и не было красных), а у каждой белой — только красные соседи (и не было белых). Уже покрашенные клетки перекрашивать нельзя.
Во входных данных находятся несколько наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 100$$$) — количество наборов входных данных. Далее следуют наборы входных данных.
Первая строка набора входных данных содержит целые числа $$$n$$$ и $$$m$$$ ($$$1 \le n \le 50$$$, $$$1 \le m \le 50$$$) — высота и ширина таблицы.
Следующие $$$n$$$ строк содержат таблицу. Каждый символ таблицы равен «R», «W» или «.».
Для каждого набора входных данных выведите «YES», если можно раскрасить таблицу требуемым образом, и «NO» в противном случае.
Если ответ существует, выведите покрашенную таблицу в следующих $$$n$$$ строках. Если существует несколько решений, выведите любое из них.
Вы можете выводить каждую букву слов «YES» и «NO» в любом регистре (строчную или заглавную), например, ответы «yEs» и «nO» будут зачтены. Однако буквы в таблице нужно выводить заглавными.
3 4 6 .R.... ...... ...... .W.... 4 4 .R.W .... .... .... 5 1 R W R W R
YES WRWRWR RWRWRW WRWRWR RWRWRW NO YES R W R W R
Ответ в первом примере дан в примере вывода. Можно показать, что решения во втором примере не существует. В третьем примере все клетки изначально покрашены, и покраска является корректной.
Название |
---|