Công thức

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1200 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: BREW.INP Output: BREW.OUT

Linh là một bartender chuyên nghiệp tại tiệm nước Hi4. Với content pha trà sữa ASMR siêu bánh cuốn trên TokTik, Linh đã thu hút lượng lớn người hâm mộ. Để chuẩn bị cho đợt khách đổ bộ sắp tới, tiệm vừa sắm một robot rót nguyên liệu tự động. Khi hoạt động, robot này sẽ phun ra một dải gồm \(N\) đơn vị nguyên liệu liên tiếp trên băng tải. Mỗi đơn vị (tương đương một muỗng) được ký hiệu là 1 nếu đó là đường và 0 nếu đó là trà.

Để pha được một bình trà sữa "khổng lồ" mà vẫn giữ được vị ngon khét tiếng, Linh cần chọn ra một đoạn liên tiếp dài nhất trên băng tải sao cho các muỗng nguyên liệu trong đoạn đó đảm bảo đúng tỉ lệ: Số lượng muỗng trà (0) phải gấp đúng \(K\) lần số lượng muỗng đường (1).

Yêu cầu: Tìm độ dài của đoạn con liên tiếp dài nhất thỏa mãn tỉ lệ trên.

Input

  • Dòng đầu tiên chứa hai số nguyên \(N\) và \(K\) (\(1 \leq N \leq 10^5; 1 \leq K \leq 100\))
  • Dòng thứ hai chứa \(N\) số nguyên \(A_1, A_2, \dots, A_N\) (\(A_i \in \{0, 1\}\))

Output

  • Một số nguyên duy nhất là độ dài đoạn con lớn nhất thỏa mãn tỉ lệ yêu cầu. Nếu không có đoạn nào thỏa mãn, in 0

Example

Test 1

Input
7 2
0 1 0 0 1 0 0
Output
6
Note

Đoạn con cần tìm nằm từ vị trí 2 đến 7. \([A_2 \dots A_7]\) = 1 0 0 1 0 0 có hai số 1 và bốn số 0. Tỉ lệ \(4:2 = 2:1 = K\).

Scoring

  • Subtask \(1\) (\(40\%\) số điểm): \(N \leq 200\)
  • Subtask \(2\) (\(30\%\) số điểm): \(N \leq 5000\)
  • Subtask \(3\) (\(30\%\) số điểm): Không có ràng buộc gì thêm

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.

Kỳ thi: