結果
| 問題 |
No.2930 Larger Mex
|
| コンテスト | |
| ユーザー |
Fuyuru
|
| 提出日時 | 2024-10-12 16:03:22 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 138 ms / 2,000 ms |
| コード長 | 581 bytes |
| コンパイル時間 | 306 ms |
| コンパイル使用メモリ | 82,164 KB |
| 実行使用メモリ | 114,364 KB |
| 最終ジャッジ日時 | 2024-10-12 16:03:32 |
| 合計ジャッジ時間 | 9,325 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 50 |
ソースコード
N,M = map(int,input().split())
A = list(map(int,input().split()))
ans = [0]*N
data = [0]*M
cnt = 0
r = 0
for l in range(N):
while r < N and cnt < M:
if A[r] < M:
if data[A[r]] == 0:
cnt += 1
data[A[r]] += 1
r += 1
if cnt < M:
break
ans[max(0,r-l-1)] += 1
if N-l < N:
ans[N-l] -= 1
if r == l:
r += 1
else:
if A[l] < M:
data[A[l]] -= 1
if data[A[l]] == 0:
cnt -= 1
for i in range(N-1):
ans[i+1] += ans[i]
print(*ans,sep='\n')
Fuyuru