Universal Cup Judging System

Universal Cup

時間限制: 2.0 s 記憶體限制: 1024 MB 總分: 100 可 Hack ✓
统计

Дано таблицю з $(3N + 1)$ рядків і $(3N + 1)$ стовпців. Визначте, чи можна пофарбувати кожну клітинку в чорний або білий колір так, щоб виконувалися всі наведені нижче умови. Якщо це можливо, виведіть одне таке фарбування.

  • Жодні дві різні чорні клітинки не мають спільної сторони.
  • Починаючи з будь-якої чорної клітинки, шляхом багаторазового (нуль або більше разів) переходу до сусідньої чорної клітинки, що має спільний кут (тобто сусідньої по діагоналі), можна дістатися до деякої чорної клітинки, яка прилягає до зовнішньої межі таблиці.
  • Усі білі клітинки утворюють одну компоненту зв'язності; тобто для будь-яких двох білих клітинок можна перейти з однієї до іншої шляхом багаторазового (нуль або більше разів) переходу до сусідньої білої клітинки, що має спільну сторону.
  • У кожному з двох певних рядків міститься рівно по $N + 1$ чорних клітинок, а в кожному з решти рядків — рівно по $N$ чорних клітинок.
  • У кожному з двох певних стовпців міститься рівно по $N + 1$ чорних клітинок, а в кожному з решти стовпців — рівно по $N$ чорних клітинок.

Вхідні дані

Вхідні дані подано в такому форматі:

N
  • Усі вхідні значення є цілими числами.
  • $1 \le N \le 500$

Вихідні дані

Якщо фарбування, яке задовольняє умови, не існує, виведіть No в окремому рядку.

Інакше виведіть фарбування, що задовольняє умови, у такому форматі. Нехай $a_{i,j}$ позначає символ, що відповідає клітинці в $i$-му рядку зверху та $j$-му стовпці зліва: кожен символ $a_{i,j}$ має дорівнювати ., якщо відповідна клітинка біла, і #, якщо вона чорна.

Yes
a_{1,1}...a_{1,3N+1}
:
a_{3N+1,1}...a_{3N+1,3N+1}

Якщо існує декілька коректних фарбувань, буде прийнято будь-яке з них.

Приклад

Приклад вводу 1

1

Приклад виводу 1

No

Примітка

Наведені нижче три приклади виводу відповідають необхідному формату виводу при $N = 1$, проте вони не задовольняють умови і тому вважаються неправильними.

Yes
##..
#...
...#
..##
Yes
#.#.
...#
#.#.
.#..
Yes
...#
.#..
..#.
#...

У першому прикладі існують чорні клітинки, що мають спільну сторону.

У другому прикладі білі клітинки не утворюють одну компоненту зв'язності.

У третьому прикладі не виконано умову щодо кількості чорних клітинок. Більше того, наприклад, починаючи з чорної клітинки у $2$-му рядку зверху та $2$-му стовпці зліва, навіть багаторазово переходячи до чорних клітинок зі спільним кутом, неможливо дістатися до жодної чорної клітинки, що прилягає до зовнішньої межі таблиці.

Можна довести, що при $N = 1$ фарбування, яке задовольняє умови, не існує.

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
#1412EditorialOpen题解jianglyView

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.