Lườ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: 1100 Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Sau nhiều ngày online LQDOJ liên tục, uia quyết định off một thời gian để nghỉ ngơi.

Trước khi offline, uia lập một danh sách gồm \(N\) hoạt động muốn làm trong kỳ nghỉ. Các hoạt động được đánh số từ \(1\) đến \(N\) theo đúng thứ tự dự định thực hiện.

Hoạt động thứ \(i\) cần \(a_i\) đơn vị thời gian.

Mỗi ngày, uia chỉ chọn một đoạn các hoạt động liên tiếp để thực hiện. Nếu chọn các hoạt động từ vị trí \(L\) đến vị trí \(R\), tổng thời gian cần dùng là:

\[a_L + a_{L+1} + \dots + a_R\]

Tuy nhiên, kế hoạch nghỉ ngơi của uia có thể thay đổi theo thời gian. Có \(Q\) sự kiện thuộc một trong hai loại:

  • 1 p x: thay đổi thời gian cần để thực hiện hoạt động thứ \(p\) thành \(x\).
  • 2 t: hỏi số lượng hoạt động liên tiếp nhiều nhất mà uia có thể thực hiện sao cho tổng thời gian không vượt quá \(t\).

uia không bắt buộc phải bắt đầu từ hoạt động đầu tiên trong danh sách.

Input

  • Dòng đầu tiên chứa hai số nguyên dương \(N\)\(Q\) (\(1 \le N, Q \le 7000\)).
  • Dòng thứ hai chứa \(N\) số nguyên dương \(a_1, a_2, \dots, a_N\) (\(1 \le a_i \le 10^9\)).
  • \(Q\) dòng tiếp theo, mỗi dòng mô tả một sự kiện theo một trong hai dạng:
    • 1 p x (\(1 \le p \le N, 1 \le x \le 10^9\)).
    • 2 t (\(1 \le t \le 10^{18}\)).

Output

  • Với mỗi sự kiện loại 2, in ra một dòng là số lượng hoạt động liên tiếp nhiều nhất mà uia có thể thực hiện.

Example

Test 1

Input
5 6
4 2 3 1 5
2 7
2 10
1 3 10
2 10
1 5 1
2 10
Output
3
4
2
2
Note

Ban đầu dãy thời gian là: 4 2 3 1 5.

  • Với \(t = 7\), có thể chọn đoạn 2 3 1, tổng bằng \(6\), độ dài là \(3\).
  • Với \(t = 10\), có thể chọn đoạn 4 2 3 1, tổng bằng \(10\), độ dài là \(4\).
  • Sau sự kiện 1 3 10, dãy trở thành: 4 2 10 1 5.
  • Với \(t = 10\), đoạn dài nhất có tổng không vượt quá \(10\) có độ dài là \(2\), ví dụ đoạn 4 2.
  • Sau sự kiện 1 5 1, dãy trở thành: 4 2 10 1 1.
  • Với \(t = 10\), đoạn dài nhất hợp lệ là 4 2 hoặc 1 1, độ dài lớn nhất là \(2\).

Bình luận

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

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