| # | Bài tập | Điểm | Thời gian: | Giới hạn bộ nhớ |
|---|---|---|---|---|
| 1 | CTT 2026 - Nameless | 100 (p) | 3.0s | 1G |
| 2 | CTT 2026 - Repeater | 100 (p) | 5.0s | 1G |
| 3 | CTT 2026 - Sequence | 100 (p) | 10.0s | 1G |
Ngày trước, bạn M và người bạn N cùng chuẩn bị một kỳ thi lập trình. Họ nghĩ ra \(n\) bài, đánh số từ \(1\) đến \(n\); chất lượng của bài thứ \(i\) là số nguyên không âm \(a_i\).
Thời gian trôi qua. M không còn là thí sinh Olympic Tin học, nhưng hai người từng hẹn sẽ cùng tổ chức một chuỗi kỳ thi. M chưa quên lời hẹn đó.
M muốn chia \(n\) bài thành một số buổi luyện tập, tức chia dãy bài thành các đoạn liên tiếp. Một cách chia được biểu diễn bởi
Có \(k\) buổi; buổi thứ \(i\) gồm các bài từ \(r_{i-1}+1\) đến \(r_i\).
M nhận thấy chất lượng của một kỳ thi được quyết định bởi bài hay nhất và bài cuối cùng. Vì vậy, chất lượng của một buổi luyện tập được định nghĩa là tích của:
M chưa quyết định số buổi và có \(q\) giá trị ứng viên \(k_1,k_2,\ldots,k_q\). Với mỗi \(k_j\), hãy tìm tổng chất lượng lớn nhất của các buổi trong mọi cách chia thành đúng \(k_j\) buổi.
Dữ liệu gồm nhiều bộ test.
Với mỗi bộ test, in một dòng gồm \(q\) số nguyên không âm. Số thứ \(j\) là tổng chất lượng lớn nhất khi chia thành đúng \(k_j\) buổi.
Tính trên toàn bộ các bộ test:
Các cột \(\sum n\) và \(\sum q\) được tính trên toàn bộ các bộ test trong một tệp.
| Phần | Điểm | \(\sum n\le\) | \(\sum q\le\) | Giới hạn thêm |
|---|---|---|---|---|
| 1 | 10 | 300 | 300 | Không có |
| 2 | 20 | 3000 | 3000 | Không có |
| 3 | 10 | \(10^5\) | 10 | Không có |
| 4 | 30 | \(10^5\) | \(10^5\) | Không có |
| 5 | 10 | \(5\cdot10^5\) | \(10^5\) | \(a_n=0\) trong mỗi bộ test |
| 6 | 20 | \(5\cdot10^5\) | \(10^5\) | Không có |
Ví dụ
2
4 3
3 2 4 1
3 1 4
5 5
10 3 16 8 7
1 2 3 4 5
26 4 30
112 312 412 469 478
Kỳ thi tập huấn đội tuyển quốc gia Trung Quốc 2026, CCF, giấy phép CC BY-NC.
Xét trò chơi niềm tin giữa hai người chơi sau đây. Lưu ý rằng trò chơi này có thể khác với một trò chơi mà bạn từng biết.
Bạn chơi với một máy lặp lại và đi trước. Chiến lược của máy được mô tả bởi một đa tập \(S\) gồm các xâu nhị phân có độ dài không quá \(m\). Máy chọn ngẫu nhiên đều một xâu \(s\in S\). Gọi \(k=|s|\). Ở lượt \(2i\) (\(1\le i\le m\)), tức hành động thứ \(i\) của máy:
Ban đầu tập chiến lược chưa được xác định. Có \(n\) thao tác; thao tác thứ \(i\) cho xâu nhị phân \(s_i\) và số nguyên \(a_i\):
Sau mỗi thao tác, hãy tính kỳ vọng lớn nhất của số xu bạn thu được khi chơi tối ưu. Các truy vấn sau từng thao tác độc lập với nhau. Bạn biết toàn bộ đa tập \(S\) nhưng không biết máy đã chọn xâu cụ thể nào; mỗi hành động của bạn có thể phụ thuộc vào tất cả lựa chọn trước đó của cả hai bên.
Bạn chỉ cần in kỳ vọng nhân với \(|S|\). Có thể chứng minh kết quả này là một số nguyên.
In \(n\) dòng. Dòng thứ \(i\) là đáp án sau thao tác thứ \(i\).
Nếu \(a_i<0\), trước thao tác có ít nhất \(-a_i\) bản sao của \(s_i\) trong \(S\) và sau thao tác \(S\) vẫn chứa ít nhất một xâu.
| Phần | Điểm | \(n\le\) | \(m\le\) | Giới hạn thêm |
|---|---|---|---|---|
| 1 | 20 | 2000 | 2000 | Tính chất A |
| 2 | 15 | 20 | \(10^6\) | Không có |
| 3 | 15 | \(3\cdot10^5\) | 20 | Không có |
| 4 | 15 | \(3\cdot10^5\) | \(10^6\) | Tính chất B |
| 5 | 35 | \(3\cdot10^5\) | \(10^6\) | Không có |
Trong từng phần:
Ngay cả khi chỉ trả lời thao tác cuối, bạn vẫn phải in đủ \(n\) số nguyên, tương ứng với đáp án sau từng thao tác.
Ví dụ
8 3
111 1
1 1
0 1
011 4
1 -1
01 3
011 -3
0 3
0
3
10
18
15
28
22
41
Kỳ thi tập huấn đội tuyển quốc gia Trung Quốc 2026, CCF, giấy phép CC BY-NC.
Cho cơ số \(p\in\{2,3\}\). Ta định nghĩa các phép toán theo từng chữ số trong cơ số \(p\) như sau.
Với \(0\le x<p^d\), viết biểu diễn cơ số \(p\) đủ \(d\) chữ số của \(x\) là
Định nghĩa \(\operatorname{popcount}_p(x)\) là số chữ số khác \(0\):
Với \(0\le x,y<p^d\), gọi các chữ số của \(x,y\) lần lượt là \(x_i,y_i\). Ba phép toán sau tạo số \(z=(z_{d-1}\ldots z_1z_0)_p\):
Cho hai dãy \(a,w\) có độ dài \(n\) và dãy \(z\) có độ dài \(p^d\), trong đó \(0\le a_i<p^d\).
Với mỗi \(0\le u<p^d\) và ba hệ số không âm \(A,B,C\), định nghĩa dãy sinh \(F(u)\) như sau. Với \(1\le i\le n\), đặt
\(F(u)\) là dãy nhận được khi sắp xếp \(b_1,b_2,\ldots,b_n\) theo thứ tự không giảm.
Có \(q\) truy vấn. Mỗi truy vấn cho \(A,B,C,l_1,r_1,l_2,r_2\) và yêu cầu tính
Lưu ý rằng dãy \(F(i)\) trong mỗi truy vấn được xác định bởi chính bộ hệ số \(A,B,C\) của truy vấn đó.
Với mỗi truy vấn, in một số nguyên không âm trên một dòng: kết quả theo modulo \(2^{32}\).
| Phần | Điểm | \(n\le\) | \(d\le\) | \(p\) | \(q\le\) | Giới hạn thêm |
|---|---|---|---|---|---|---|
| 1 | 5 | 5000 | 12 | 2 | 5 | Không có |
| 2 | 15 | \(3\cdot10^5\) | 10 | 2 | \(10^5\) | Không có |
| 3 | 11 | \(3\cdot10^5\) | 12 | 2 | \(3\cdot10^5\) | Tính chất A |
| 4 | 8 | \(3\cdot10^5\) | 12 | 2 | \(3\cdot10^5\) | Tính chất B |
| 5 | 17 | \(3\cdot10^5\) | 12 | 2 | \(3\cdot10^5\) | Tính chất C |
| 6 | 17 | \(3\cdot10^5\) | 12 | 2 | \(3\cdot10^5\) | Không có |
| 7 | 11 | \(3\cdot10^5\) | 5 | 3 | \(3\cdot10^5\) | Tính chất C |
| 8 | 16 | \(3\cdot10^5\) | 5 | 3 | \(3\cdot10^5\) | Không có |
Ví dụ
3 2 2
0 0 2
1 1 2
3 4 4 4
5
1 7 2 0 1 1 1
3 3 5 0 2 2 3
5 2 10 0 1 2 3
3 9 7 0 3 3 3
5 6 1 0 1 2 3
36
304
312
736
182
Khối lượng vào/ra có thể lớn; nên sử dụng phương thức vào/ra nhanh.
Kỳ thi tập huấn đội tuyển quốc gia Trung Quốc 2026, CCF, giấy phép CC BY-NC.