結果
問題 | No.709 優勝可能性 |
ユーザー |
|
提出日時 | 2020-05-12 22:36:59 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 809 ms / 3,500 ms |
コード長 | 1,086 bytes |
コンパイル時間 | 152 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 55,680 KB |
最終ジャッジ日時 | 2024-09-14 01:03:48 |
合計ジャッジ時間 | 10,192 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 22 |
ソースコード
import sys sys.setrecursionlimit(100000000) MOD = 17 INF = 10 ** 15 def main(): N,M = map(int,input().split()) param = [tuple(map(int,input().split())) for _ in range(N)] before = [set() for _ in range(M)] before_max = [0] * M ans = 0 for i in range(N): exceed = False for j in range(M): if before_max[j] < param[i][j]: before_max[j] = param[i][j] exceed = True for s in before[j]: flag = False for k in range(M): if k == j: continue if s in before[k]: flag = True break if not flag: ans -= 1 before[j].clear() before[j].add(i) elif before_max[j] == param[i][j]: before[j].add(i) exceed = True if exceed: ans += 1 print(ans) if __name__ == '__main__': main()