結果

問題 No.488 四角関係
ユーザー yumechiyumechi
提出日時 2017-02-25 01:29:49
言語 PyPy3
(7.3.15)
結果
MLE  
実行時間 -
コード長 1,049 bytes
コンパイル時間 689 ms
コンパイル使用メモリ 82,176 KB
実行使用メモリ 650,200 KB
最終ジャッジ日時 2024-06-11 03:38:14
合計ジャッジ時間 10,403 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 110 ms
79,152 KB
testcase_01 AC 396 ms
114,732 KB
testcase_02 AC 172 ms
87,124 KB
testcase_03 AC 181 ms
86,480 KB
testcase_04 AC 213 ms
91,644 KB
testcase_05 AC 454 ms
120,224 KB
testcase_06 AC 122 ms
79,572 KB
testcase_07 AC 1,399 ms
247,368 KB
testcase_08 MLE -
testcase_09 -- -
testcase_10 -- -
testcase_11 -- -
testcase_12 -- -
testcase_13 -- -
testcase_14 -- -
testcase_15 -- -
testcase_16 -- -
testcase_17 -- -
testcase_18 -- -
testcase_19 -- -
testcase_20 -- -
testcase_21 -- -
testcase_22 -- -
testcase_23 -- -
testcase_24 -- -
権限があれば一括ダウンロードができます

ソースコード

diff #

from collections import deque
from collections import defaultdict
import copy

def solve():
	n, m = map(int, input().split())
	node_pair = []
	for _ in range(m):
		a, b = map(int, input().split())
		node_pair.append([a, b])
	node_dict = defaultdict(list)
	for pair in node_pair:
		node_dict[pair[0]].append(pair[1])
		node_dict[pair[1]].append(pair[0])
	
	squares = []	
	for i in range(n):
		pairs = deque()
		pairs.append([i])
		while len(pairs) > 0:
			pair = pairs.popleft()
			connect_nodes = node_dict[pair[-1]]
			for node in connect_nodes:
				if node not in pair:
					tpair = copy.deepcopy(pair)
					tpair.append(node)
					if len(tpair) == 4:
						tpair.sort()
						squares.append(tuple(tpair))
					else:
						pairs.append(tpair)
	squares = set(squares)
	ans = 0
	for square in squares:
		for idx in range(4):
			connection_count = 0
			for node in node_dict[square[idx]]:
				if node in square:
					connection_count += 1
			if connection_count != 2:
				break
		else:
			ans += 1 
	print(ans)


if __name__=="__main__":
    solve()
0