結果
問題 |
No.488 四角関係
|
ユーザー |
|
提出日時 | 2017-02-24 23:02:59 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,038 bytes |
コンパイル時間 | 178 ms |
コンパイル使用メモリ | 12,288 KB |
実行使用メモリ | 10,880 KB |
最終ジャッジ日時 | 2025-01-02 23:41:46 |
合計ジャッジ時間 | 6,677 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 2 WA * 20 |
ソースコード
import itertools def main(): global mapping N, M = map(int, input().split()) mapping = [[False]*N for n in range(N)] for m in range(M): a, b = map(int, input().split()) mapping[a][b] = True mapping[b][a] = True # print(mapping) count = 0 for c in itertools.combinations(range(N), 4): if check(c): # print(c) count += 1 print(count) def check(p): stack = [(p[0], 1)] count = 0 while len(stack) != 0: now, num = stack.pop() for i in range(4): if connected(now, p[i]): if num + 1 == 4: count += 1 else: stack.append((p[i], num + 1)) if count == 1: return True else: return False def connected(x,y): if mapping[x][y] or mapping[y][x]: return True else: return False if __name__ == "__main__": # {{{ try: import test test.test() except: main() # }}}