TopCoder

Omelet
ㄏ一ㄏ一 軟軟好香

User's AC Ratio

66.7% (2/3)

Submission's AC Ratio

66.7% (2/3)

Tags

Description

想像一下,有一張保加利亞的桌子(table),被分成了三列四行的小區塊。每一個區塊上都有一個獨一無二的正整數。我們說這張桌子上的整數被「正確地」安置時,代表每一橫列的數字和都是偶數,而且每個直行的數字和都是三的倍數。顯然地,若我們交換任意的兩列、或者是兩行,仍然保持這些整數安置的正確性。例如下圖所示的三個排列經過交換行列其實都是一樣的,於是它們屬於同一種安置方法。

給你十二個正整數,請問有多少種正確但不同的安置方法呢?

Input Format

輸入一定有兩筆測試資料,一筆佔一列,每一列有十二個不相等的正整數。
這些正整數都不會超過50位數。

Output Format

對於每筆測試資料請輸出所求的種數。

Sample Input 1

6 3 1 7 9 11 12 10 2 4 5 8
6 12 18 24 30 36 42 48 54 59 60 61

Sample Output 1

40320
0

Hints

Problem Source

原TIOJ1265 / Bulgarian National Olympiad in Informatics 2008 Final (Prob A4)

Subtasks

No. Testdata Range Score
1 0 9
2 1 9
3 2 9
4 3 9
5 4 9
6 5 9
7 6 9
8 7 9
9 8 9
10 9 9
11 10 10

Testdata and Limits

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