Professional Documents
Culture Documents
Cho dãy số gồm n số nguyên a1, a2, …, an. Một đoạn con của dãy đã cho là dãy ai,…,aj (1 ≤
i ≤ j ≤ n), dãy có độ dài (j-i+1) và có trọng số bằng tổng (ai+…+aj).
Yêu cầu: Tìm hai đoạn con không có phần tử chung, mỗi đoạn có độ dài là một số chia hết cho 3
và tổng trọng số của hai đoạn con là lớn nhất.
Dữ liệu vào từ file Seq.inp gồm:
Dòng đầu ghi số nguyên n (n≥6);
Dòng thứ hai ghi n số nguyên a1, a2,…,an (|𝑎𝑖 |≤109).
Kết quả ghi ra file Seq.out gồm duy nhất một số là tổng trọng số của hai đoạn con tìm được.
Ví dụ:
Seq.inp Seq.out
11 5
-1 3 -1 -9 -1 1 1 1 1 1 -9
Giới hạn:
Có 30% số test có n ≤ 20;
Có 30% số test có n ≤ 200;
Có 20% số test khác có n ≤ 2000;
Có 20% số test còn lại có n ≤ 200000.
Bài 2. Even subsequences
Hôm nay Bờm mới được học về dãy số, Bờm thấy chúng rất thú vị, nên bài tập thầy cho về
nhà làm Bờm đều cố gắng làm hết. Tuy nhiên đến bài cuối cùng thì Bờm nghĩ mãi không ra, và
Bờm quyết định đi ngủ và đợi ngày mai hỏi các bạn thi HSG Olympic truyền thống 30.04.
Bài toán cuối cùng của Bờm có phát biểu như sau: cho dãy số 𝑎𝑖 có 𝑛 phần tử đánh số từ 1
đến 𝑛, đếm xem với dãy đã cho có bao nhiêu dãy con liên tiếp có chênh lệch của phần tử lớn
nhất và phần tử nhỏ nhất là một số chẵn. Hãy giúp Bờm giải quyết bài toán trên.
Dữ liệu vào từ file EVENSUB.INP:
Ví dụ:
EVENSUB.INP EVENSUB.OUT
5 11
45263
9 17
436843516
Giới hạn:
Có 40% số điểm có 𝑛 ≤ 1000
Có 30% số điểm có 1 ≤ 𝑎𝑖 ≤ 3
Có 30% số điểm còn lại không có ràng buộc gì thêm.
Bài 3. Tổng trung vị
Cho N dãy số không giảm A1, A2, …, AN, mỗi dãy gồm L số nguyên (dãy số được gọi là
không giảm nếu mỗi phần tử đứng sau là lớn hơn hoặc bằng phần tử đứng trước). Xét hai dãy Ai
và Aj (1≤ i, j ≤ N), ta gọi dãy gộp (ký hiệu là Aij) của hai dãy Ai, Aj là dãy gồm tất cả 2L phần tử
của hai dãy Ai, Aj được sắp xếp theo thứ tự không giảm và phần tử đứng ở vị trí thứ L trong dãy
gộp được gọi là phần tử trung vị của nó.
Ví dụ: Xét hai dãy số
Ai = (1 3 4 5 6); Aj = (0 1 5 6 7).
Khi đó dãy gộp Aij từ hai dãy đã cho là
0113455667
có phần tử trung vị là 4.
Yêu cầu: Tính tổng của tất cả các phần tử trung vị của tất cả các dãy gộp Aij với 1≤ i < j ≤ N.
Hai số liên tiếp trên cùng một dòng trong file dữ liệu được ghi cách nhau bởi ít nhất một
dấu cách.
Kết quả: Ghi ra file văn bản MEDSUM.OUT giá trị mod 109 (là phần dư trong phép
chia cho 109), trong đó là tổng của tất cả các phần tử trung vị của tất cả các dãy gộp Aij với
1≤ i < j ≤ N.
Ví dụ:
MEDSUM.INP MEDSUM.OUT
36 8
123456
345678
001122
Giới hạn:
Có 50% số số điểm co số test thoả mãn: 2 ≤ N ≤ 100, 1 ≤ L ≤ 300.
Có 50% số điểm còn lại không có ràng buộc gì thêm.
Hết
(Thí sinh không được phép sử dụng tài liệu)