結果
| 問題 | No.3512 moesode |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-06-09 09:45:19 |
| 言語 | PyPy3 (7.3.17) |
| 結果 |
AC
|
| 実行時間 | 142 ms / 2,000 ms |
| コード長 | 677 bytes |
| 記録 | |
| コンパイル時間 | 203 ms |
| コンパイル使用メモリ | 85,204 KB |
| 実行使用メモリ | 96,384 KB |
| 最終ジャッジ日時 | 2026-06-09 09:45:25 |
| 合計ジャッジ時間 | 4,613 ms |
|
ジャッジサーバーID (参考情報) |
judge3_0 / judge1_1 |
| 純コード判定待ち |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 32 |
ソースコード
N,M,K = map(int, input().split())
inDeg = [0] * (N + 1)
outDeg = [0] * (N + 1)
for _ in range(M):
a,b = map(int, input().split())
inDeg[b] += 1
outDeg[a] += 1
sum_out = 0
n = 0
sum_n = 0
A = []
for i in range(1,N+1):
if outDeg[i]>0:
sum_out += max(0, K-inDeg[i])
sum_n += inDeg[i]
n += 1
else:
A.append((max(0, K-inDeg[i]),inDeg[i]))
if n*(n-1)>=sum_out+sum_n:
print(sum_out)
else:
A = sorted(A,key=lambda x:x[0])
cnt = 0
sum_m = 0
for i in range(len(A)):
cnt += A[i][0]
sum_m += A[i][1]
if (n+i+1)*(n+i)>=(sum_out+cnt+sum_n+sum_m):
print(sum_out+cnt)
break