Giá Cổ Phiếu Lớn Nhất
Xem dưới dạng PDF
Gửi bài giải
Điểm:
100
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
đầu vào:
stdin
Đầu ra:
stdout
Tác giả:
Kiểu bài tập
Bob đang theo dõi biến động chỉ số giá cổ phiếu của một doanh nghiệp công nghệ lớn trong vòng \(N\) ngày, được đánh số từ \(1\) đến \(N\). Giá cổ phiếu ở ngày thứ \(i\) ban đầu là \(A_i\). Trong quá trình quan sát, Bob cần xử lý \(Q\) truy vấn thuộc hai loại:
1 pos val: Giá trị cổ phiếu ở ngày thứ \(pos\) có sự điều chỉnh tăng/giảm thành giá trị mới là \(val\).2 R: Bob muốn biết giá trị cổ phiếu cao nhất đạt được trong khoảng thời gian từ ngày \(1\) đến ngày \(R\).
Hãy lập trình giúp Bob thực hiện việc thống kê giá cổ phiếu.
Định dạng đầu vào
- Dòng đầu chứa hai số nguyên dương \(N\) và \(Q\) (\(1 \le N, Q \le 10^5\)).
- Dòng hai chứa \(N\) số nguyên dương \(a_1, a_2, \dots, a_N\) là giá cổ phiếu ban đầu của các ngày (\(1 \le a_i \le 10^9\)).
- \(Q\) dòng tiếp theo chứa các truy vấn (\(1 \le pos \le N\), \(1 \le R \le N\), \(1 \le val \le 10^9\)).
Định dạng đầu ra
- Với mỗi truy vấn loại
2, in ra giá trị cổ phiếu cao nhất tìm được.
Ví dụ
Input:
5 4
10 20 5 30 15
2 3
1 3 25
2 3
2 5
Output:
20
25
30
Nhận xét