Universal Cup Judging System

Universal Cup

Süre Sınırı: 2 s Bellek Sınırı: 2048 MB Toplam puan: 100 Zorluk: [göster] Hack'lenebilir ✓
İstatistikler

小青魚有一個 $n$ 列 $m$ 行的矩形網格。他想要將這個網格劃分為若干個五格骨牌(pentomino)。一個五格骨牌是由恰好五個透過共用邊相連的單元格所組成的區域。

五格骨牌共有十二種形狀,分別標記為 F、I、L、P、N、T、U、V、W、X、Y 和 Z,如下圖所示。每種形狀都可以旋轉或翻轉。

problem_22893_d5287cfb3c31c32c34a0b3d18033502f.png

小青魚希望每個單元格都恰好屬於一個五格骨牌。此外,任何兩個相同形狀的五格骨牌都不能共用邊,即使它們的朝向不同也不行。僅共用頂點(角)是允許的。

請找出一種滿足上述規則的劃分方案。如果不存在這樣的方案,請回報無解。

輸入格式

本題包含多組測試資料。輸入的第一行包含一個整數 $T$($1 \le T$),表示測試資料的組數。

對於每組測試資料,第一行包含兩個整數 $n$ 和 $m$($1 \le n, m \le 1000$),分別表示網格的列數與行數。保證 $n \times m$ 是 $5$ 的倍數。

保證所有測試資料中 $n \times m$ 的總和不會超過 $10^6$。

輸出格式

對於每組測試資料,如果不存在合法的劃分方案,請輸出一行包含 No。否則,請輸出一行包含 Yes,接著輸出 $n$ 行,每行包含一個長度為 $m$ 且僅由十二個大寫字母 FILPNTUVWXYZ 組成的字串。

第 $i$ 列第 $j$ 行的字母必須是包含該單元格的五格骨牌的標號。每一個由相同字母組成且透過共用邊相連的極大連通區域都必須恰好由五個單元格組成,並且具有其字母所代表的形狀。

字串 Yes 和 No 不區分大小寫。如果存在多種合法的劃分方案,輸出任意一種即可。

範例

輸入格式 1

4
1 5
1 10
3 5
2 10

輸出格式 1

Yes
IIIII
No
Yes
LLLLT
LYTTT
YYYYT
Yes
LLLLNNNPPP
LIIIIINNPP

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.