TopCoder

User's AC Ratio

100.0% (2/2)

Submission's AC Ratio

50.0% (6/12)

Tags

Description

本題與 Hard 的差別在 Code Length 不能超過 4KB 且時限只有 4 秒

SET! 是蕾娜最愛玩的桌遊,這款桌遊蘊含了許多特別的數學性質。

SET! 的主要架構為 81 張相異的卡牌,每張牌有 4 種特徵,每一種特徵有 3 種不同的狀態,例如顏色是特徵,而它有紅、綠、紫共三種狀態。

為了方便,我們可以視每張牌為一個有序四元組。更明確的說,對於所有 0x80,假設 x=a333+a232+a131+a030,其中 a0,a1,a2,a3{0,1,2},則有序四元組 vx=(a0,a1,a2,a3) 代表編號為 x 的牌,其中 ai 代表這張卡第 i 種特徵是第 ai 種狀態。

舉例來說,因為 29=133+032+031+230,所以 v29=(2,0,0,1)

對於三張兩兩相異的牌 vx=(a0,a1,a2,a3),vy=(b0,b1,b2,b3),vz=(c0,c1,c2,c3),我們稱它們能形成一組 SET 若且唯若對於每種特徵,三張牌該特徵的狀態都相同或是都相異,即 (ai+bi+ci)mod3=0,0i3

舉例來說,v29=(2,0,0,1),v37=(1,0,1,1),v45=(0,0,2,1) 可以形成一組 SET,但是 v28=(1,0,0,1),v37=(1,0,1,1),v45=(0,0,2,1) 不行,因為第 0 個特徵不完全一樣,也不完全不一樣。

蕾娜認為按照 SET! 原本的規則玩 SET! 固然有趣,但研究其數學性質更有趣,尤其是她最近一直在研究的 anti-SET 集合。

對於一個整數集合 S{0,1,2,,80},我們稱 S 是一個 anti-SET 集合若且唯若對於所有 x,y,zS,xy,yz,zxvx,vy,vz 不形成一組 SET。

蕾娜表示她已經證明出所有 anti-SET 集合的大小皆不超過 20,同時她也證明了大小恰好為 20 的 anti-SET 集合恰好有 682344 個。

蕾娜認為身為 IOIC 學員的你肯定能夠輕易地構造出數個相異的 anti-SET 集合。給定一個正整數 N,請你找出 N 個大小為 20 的相異 anti-SET 集合 S1,S2,,SN 來回應蕾娜的期待。

Input Format

輸入只有一個正整數 N

  • N{1,682344}

Output Format

輸出 N 行,其中第 i 行輸出 20 個相異的整數 ai,1,ai,2,,ai,20,代表 Si=ai,1,ai,2,,ai,20

注意到你給出的答案必須滿足以下條件:

  • 0ai,j80
  • Si 是一個 anti-SET 集合
  • 對於所有 jkai,jai,k
  • 對於所有 ijSiSj

Sample Input 1

1

Sample Output 1

0 5 6 11 13 17 18 23 24 39 41 56 57 62 63 67 69 74 75 80

Hints

純粹來懲罰純打表

Problem Source

Subtasks

No. Testdata Range Constraints Score
1 0 範例測資 0
2 0~1 無其他限制 100

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 4000 1048576 65536 1 2
1 4000 1048576 65536 2