Dãy số đối xứng (THTB Chung kết - Hà Nội)

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: 1900 Thời gian: 1.0s Bộ nhớ: 256M Input: daysodoixung.inp Output: daysodoixung.out

Dãy số \(B\) gồm \(N\) phần tử \(B_{1}, B_{2}, \ldots, B_{M - 1}, B_{M}\) được gọi là dãy số đối xứng độ dài \(M\) khi viết dãy số theo thứ tự ngược lại vẫn thu được dãy số \(B\). Ví dụ hai dãy số \((3, 2, 3), (4, -1, -1, 4)\) là dãy số đối xứng độ dài \(3\)\(4\).

Cho dãy số \(A\) gồm \(N\) phần tử \(A_{1}, A_{2}, \ldots, A_{N - 1}, A_{N}\) và một số nguyên dương \(K\).

Yêu cầu: Tìm cách bỏ đi ít phần tử nhất của dãy số \(A\) để thu được dãy số đối xứng có độ dài không vượt quá \(K\).

Input

  • Dòng đầu tiên gồm hai số nguyên dương \(N, K\) \((1 \leq N \leq 10^{5}, 1 \leq K \leq 100)\).
  • Dòng thứ hai gồm \(N\) số nguyên dương \(A_{1}, A_{2}, \ldots, A_{N - 1}, A_{N}\) \((1 \leq A_{i} \leq 10^{5})\).

Output

  • In ra một số nguyên là độ dài của dãy số đối xứng thoả mãn đề bài.

Scoring

  • Subtask \(1\) (\(30\%\) số điểm): \(N \leq 20\).
  • Subtask \(2\) (\(20\%\) số điểm): \(N \leq 10^{3}\).
  • Subtask \(3\) (\(20\%\) số điểm): \(A_{i} \leq 10\).
  • Subtask \(4\) (\(30\%\) số điểm): không có ràng buộc gì thêm.

Example

Test 1

Input
5 4
1 1 2 1 1
Output
4

Bình luận

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

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