結果

問題 No.2930 Larger Mex
ユーザー kusirakusirakusirakusira
提出日時 2024-09-09 16:07:09
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 164 ms / 2,000 ms
コード長 819 bytes
コンパイル時間 149 ms
コンパイル使用メモリ 82,380 KB
実行使用メモリ 122,376 KB
最終ジャッジ日時 2024-10-12 06:39:21
合計ジャッジ時間 9,024 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 50
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

n,m = map(int, input().split())
A = list(map(int, input().split()))
cnt = {}
if(m==0):
for i in range(n):
print(n-i)
exit()
def add(x):
if(x >= m):
return
if(x not in cnt):
cnt[x] = 0
cnt[x] += 1
def remove(x):
if(x >= m):
return
cnt[x] -= 1
if(cnt[x] == 0):
del cnt[x]
B = [0]*n
# [l, r)
l = 0
r = 0
while l < n:
if(len(cnt) == m):
# print(A[l:r])
# imos
a = r-l
b = a + (n-r)
B[a-1] += 1
if(b < n): B[b] -= 1
# print(a,b)
remove(A[l])
l += 1
else:
if(r == n):
break
add(A[r])
r += 1
CB = [0]
for i in range(n):
CB.append(CB[-1] + B[i])
for ans in CB[1:]:
print(ans)
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0