結果
問題 |
No.2930 Larger Mex
|
ユーザー |
![]() |
提出日時 | 2025-03-19 02:31:48 |
言語 | Go (1.23.4) |
結果 |
RE
|
実行時間 | - |
コード長 | 680 bytes |
コンパイル時間 | 11,894 ms |
コンパイル使用メモリ | 240,324 KB |
実行使用メモリ | 9,980 KB |
最終ジャッジ日時 | 2025-03-19 02:32:17 |
合計ジャッジ時間 | 27,375 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 26 RE * 24 |
ソースコード
package main import . "fmt" import . "os" import bf "bufio" func main() { rd := bf.NewReader(Stdin) var n,m int Fscan(rd,&n,&m) a := make([]int, n) for i := range a { Fscan(rd,&a[i]) } s := make([]int, n+1) f := make([]int, 2e5+1) cnt, l, r := 0, 0, 0 f[a[0]]++ if a[0] < m { cnt++ } for l<n { if (cnt < m && r+1<=n) || (l > r) { r++ if r < n { f[a[r]]++ if a[r]<m&&f[a[r]]==1 { cnt++ } } } else if l <= r { // Println("l=",l,", r=",r,", r-l+1=",r-l+1,",a[l:r]=",a[l:r]) s[1]++ s[r-l+1]-- f[a[l]]-- if a[l]<m&&f[a[l]]==0 { cnt-- } l++ } } x := 0 for i,v := range s[1:] { x += v Println(n-i-x) } }