結果

問題 No.1831 Parasol
ユーザー horitaka1999horitaka1999
提出日時 2022-02-05 11:22:55
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 900 bytes
コンパイル時間 308 ms
コンパイル使用メモリ 87,008 KB
実行使用メモリ 85,124 KB
最終ジャッジ日時 2023-09-02 06:31:04
合計ジャッジ時間 4,509 ms
ジャッジサーバーID
(参考情報)
judge14 / judge13
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 79 ms
75,748 KB
testcase_01 TLE -
testcase_02 -- -
testcase_03 -- -
testcase_04 -- -
testcase_05 -- -
testcase_06 -- -
testcase_07 -- -
testcase_08 -- -
testcase_09 -- -
testcase_10 -- -
testcase_11 -- -
testcase_12 -- -
testcase_13 -- -
testcase_14 -- -
testcase_15 -- -
testcase_16 -- -
testcase_17 -- -
testcase_18 -- -
testcase_19 -- -
権限があれば一括ダウンロードができます

ソースコード

diff #

N = int(input())
cnt = [i for i in range(2*N)]
ans = []
def dfs(i,List):
    global cnt
    global ans
    if i == N-1:
        flag2 = True
        flag1 = True
        S = []
        for s in List:
            if cnt[s] >= 2:
                pass
            elif cnt[s] == 1:
                flag2 = False
            else:
                flag2 = False
                flag1 = False
        if flag2:
            for s in List:
                cnt[s]-=2
                S.append(s)
            ans.append(S)
            ans.append(S)

        elif flag1:
            for s in List:
                cnt[s]-=1
                S.append(s)
            ans.append(S)
    else:
        for nx in range(List[i]-1,0,-1):
            if cnt[nx] >= 1:
                dfs(i+1,List + [nx])
for l in range(2*N-1,1,-1):
    dfs(0,[l])
print(len(ans))
for s in ans:
    print(*s)
            
            
    
0