TopCoder

User's AC Ratio

NaN% (0/0)

Submission's AC Ratio

NaN% (0/0)

Tags

Description

某社群平台上有 $n$ 個帳號,編號為 $1$ 到 $n$。系統會為每一對帳號建立一筆關係紀錄,並將其自動判定為兩種型別之一:「已連結」或「未連結」——這是資料寫入當下就決定的欄位值,並非使用者手動設定。

平台的風控系統執行著一條內部代號為 YTP 規則You can't have This Pattern,意即「不准出現這種特徵」)的規則,用來防止資料異常:

資料表中不得存在 $k$ 個帳號,使得這 $k$ 個帳號兩兩之間的關係型別全部相同——無論是兩兩皆為「已連結」(會被判定為疑似機器人叢集),還是兩兩皆為「未連結」(會被判定為孤立群組異常),只要能湊齊 $k$ 個帳號、彼此關係型別一致,就會觸發 YTP 規則,導致整份資料被判定不合規、打回重寫。

身為這套系統的資料庫管理員,你的任務是:事先設計好每一對帳號之間的關係型別(已連結/未連結),讓整份資料表能通過 YTP 規則的檢查。若無論怎麼設計都必定會觸發此規則,請回報無解。

Input Format

輸入只有一行,包含以空白分隔的兩個整數 $n$ 和 $k$,分別代表帳號的數量,以及觸發 YTP 規則所需的帳號個數。

  • $3 \le k \le n \le 10$

Output Format

如果無論怎麼設計都會觸發 YTP 規則,輸出一行 -1

否則輸出 $n$ 行,每行 $n$ 個字元(01,字元之間沒有空白),代表一個 $n \times n$ 的矩陣 $A$,描述你設計的關係表:第 $i$ 行的第 $j$ 個字元 $A_{i,j}$ 是帳號 $i$ 與帳號 $j$ 之間的關係型別,1 代表「已連結」,0 代表「未連結」。這個矩陣必須滿足

  • 對角線全為 0,即對每個 $i$ 都有 $A_{i,i} = 0$(帳號與自己之間沒有關係紀錄);
  • 矩陣對稱,即對每組 $i, j$ 都有 $A_{i,j} = A_{j,i}$(帳號 $i$ 與帳號 $j$ 之間只有一筆關係紀錄,型別只有一種)。

能通過檢查的設計可能有很多種,輸出任何一種都算對。

Sample Input 1

4 3

Sample Output 1

0010
0001
1001
0110

Sample Input 2

7 4

Sample Output 2

0000111
0010010
0100101
0000011
1010010
1101100
1011000

Hints

對於範例測資 1,$n = 4$、$k = 3$。範例輸出把 $6$ 筆關係紀錄分成兩組:

  • 已連結(1):${1,3}$、${3,4}$、${4,2}$
  • 未連結(0):${3,2}$、${2,1}$、${1,4}$

其中任意挑出 $3$ 個帳號,其中一定至少有一對「已連結」、也至少有一對「未連結」,湊不出 $3$ 個兩兩型別相同的帳號。

注意矩陣必須對稱:例如 $A_{1,3}$ 和 $A_{3,1}$ 都是 1,這是因為帳號 $1$ 與帳號 $3$ 之間只有一筆關係紀錄。

對於範例測資 2,$n = 7$、$k = 4$。此時「已連結」的關係紀錄有 $10$ 筆:

$${1,5},\ {1,6},\ {1,7},\ {2,3},\ {2,6},\ {3,5},\ {3,7},\ {4,6},\ {4,7},\ {5,6}$$

其餘 $11$ 筆則是「未連結」。任意挑出 $4$ 個帳號,都不會出現兩兩型別完全相同的情形。

兩筆範例測資中,能通過檢查的設計都不只一種,其他任何滿足條件的矩陣同樣會被接受。

Problem Source

2026 YTP 國中組決賽 p6

Subtasks

No. Testdata Range Constraints Score
1 0~1 範例測試資料 0
2 2~8 $k \ge 4$ 9
3 0~12 無額外限制 6

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 1000 262144 65536 1 3
1 1000 262144 65536 1 3
2 1000 262144 65536 2 3
3 1000 262144 65536 2 3
4 1000 262144 65536 2 3
5 1000 262144 65536 2 3
6 1000 262144 65536 2 3
7 1000 262144 65536 2 3
8 1000 262144 65536 2 3
9 1000 262144 65536 3
10 1000 262144 65536 3
11 1000 262144 65536 3
12 1000 262144 65536 3