提出 #7269913
ソースコード 拡げる
import sys
input = sys.stdin.readline
sys.setrecursionlimit(10 ** 7)
from collections import deque
N = int(input())
A = [[-1] + [int(x)-1 for x in row.split()][::-1] for row in sys.stdin.readlines()]
A.append([-1])
def f():
can_use = [n for n in range(N) if A[A[n][-1]][-1] == n]
for n in can_use:
A[n].pop()
return len(can_use)
answer = 0
rest = N*(N-1)
while True:
answer += 1
x = f()
if x == 0:
answer = -1
break
rest -= x
if rest == 0:
break
print(answer)
提出情報
| 提出日時 | |
|---|---|
| 問題 | E - League |
| ユーザ | maspy |
| 言語 | PyPy3 (2.4.0) |
| 得点 | 0 |
| コード長 | 558 Byte |
| 結果 | TLE |
| 実行時間 | 2107 ms |
| メモリ | 73564 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||||
|---|---|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 0 / 500 | ||||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | a01, a02, a03 |
| All | a01, a02, a03, b04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23 |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| a01 | AC | 174 ms | 38256 KiB |
| a02 | AC | 169 ms | 38256 KiB |
| a03 | AC | 175 ms | 38384 KiB |
| b04 | AC | 177 ms | 38256 KiB |
| b05 | AC | 173 ms | 38256 KiB |
| b06 | AC | 172 ms | 38256 KiB |
| b07 | AC | 179 ms | 38256 KiB |
| b08 | TLE | 2107 ms | 67932 KiB |
| b09 | AC | 379 ms | 66140 KiB |
| b10 | AC | 456 ms | 73564 KiB |
| b11 | AC | 467 ms | 73564 KiB |
| b12 | AC | 273 ms | 48820 KiB |
| b13 | AC | 273 ms | 48988 KiB |
| b14 | AC | 226 ms | 44252 KiB |
| b15 | AC | 244 ms | 44524 KiB |
| b16 | AC | 192 ms | 40432 KiB |
| b17 | AC | 221 ms | 42716 KiB |
| b18 | AC | 268 ms | 47452 KiB |
| b19 | AC | 252 ms | 46300 KiB |
| b20 | AC | 204 ms | 41564 KiB |
| b21 | AC | 202 ms | 40688 KiB |
| b22 | AC | 189 ms | 39152 KiB |
| b23 | AC | 187 ms | 39664 KiB |