| # | Bài tập | Điểm | Thời gian: | Giới hạn bộ nhớ |
|---|---|---|---|---|
| 1 | Chu vi hình chữ nhật (THT B An Hải, Sơn Trà, Thanh Khê, Đà Nẵng 2026) | 50 (p) | 1.0s | 512M |
| 2 | Số lượng ước số (THT B An Hải, Sơn Trà, Thanh Khê, Đà Nẵng 2026) | 30 (p) | 2.0s | 512M |
| 3 | Thí nhiệm (THT B An Hải, Sơn Trà, Thanh Khê, Đà Nẵng 2026) | 20 (p) | 2.0s | 512M |
An vẽ một hình chữ nhật lên giấy và yêu cầu Bình đoán chu vi của hình chữ nhật mà An vừa vẽ. Tuy nhiên, An chỉ nói cho Bình biết hình chữ nhật có diện tích bằng \(s\) và các kích thước (chiều dài và chiều rộng) của nó là các số nguyên dương.
Bình đoán rằng An sẽ vẽ hình có chu vi nhỏ nhất hoặc lớn nhất trong số các hình chữ nhật thỏa mãn cả hai điều kiện mà An đã đưa ra, nên muốn nhờ bạn tính chu vi của hình được An vẽ trong hai trường hợp này. Các bạn hãy tính toán giúp Bình nhé.
Test 1
6
10 14
An có thể vẽ một trong hai hình chữ nhật: kích thước \(3 \cdot 2\) (chu vi \(10\)) hoặc kích thước \(6 \cdot 1\) (chu vi \(14\)).
Chấm điểm:
Hôm nay thầy Thành cho các bạn trong đội tuyển làm một bài kiểm tra về chủ đề phép chia hết. Thầy sẽ đưa cho mỗi bạn một số nguyên dương, và yêu cầu các bạn tính số lượng ước của số được đưa ra.
Do thầy Thành rất lười tạo ra các số nguyên dương khác nhau, thầy chỉ tạo ra một dãy số nguyên dương \(a\) gồm \(n\) phần tử \(a_1, a_2, a_3, \ldots, a_n\). Sau đó, với mỗi học sinh, thầy chọn ra một bộ ba chỉ số \((u, v, w)\) với \(1 \le u \le v < w \le n\), rồi tính các tổng \(s(u, v) = a_u + a_{u+1} + \ldots + a_v\), \(s(u, w) = a_u + a_{u+1} + \ldots + a_w\) và lấy kết quả \(x\) của phép tính \(x = s(u, w) - s(u, v)\) làm đề bài. Rất may, số học sinh của đội tuyển lại đúng bằng số lượng bộ chỉ số có thể chọn, nên thầy có thể chọn các bộ \((u, v, w)\) sao cho mỗi bạn đều có thể nhận được kết quả \(x\) từ các bộ chỉ số khác nhau (mặc dù có thể số nguyên dương mà các bạn nhận được là giống nhau).
Thầy Thành không muốn kiểm tra kết quả của từng bạn, nên thầy có một giải pháp đơn giản: cộng kết quả của tất cả các bạn lại rồi đối chiếu với đáp án, nếu tổng kết quả của các bạn là chính xác, tất cả các bạn trong đội tuyển sẽ được \(10\) điểm, ngược lại thì tất cả các bạn sẽ được \(0\) điểm. Tuy nhiên việc tính toán chính xác đáp án cũng mất rất nhiều thời gian và dễ sai sót, nên các bạn hãy tính toán giúp thầy Thành nhé.
Test 1
3
1 2 3
8
Các bộ \((u, v, w)\) mà thầy Thành có thể chọn được cho trong bảng sau:
| \((u, v, w)\) | \(s(u, v)\) | \(s(u, w)\) | \(x\) | Số ước |
|---|---|---|---|---|
| \((1, 1, 2)\) | \(1\) | \(3\) | \(2\) | \(2\) |
| \((1, 1, 3)\) | \(1\) | \(6\) | \(5\) | \(2\) |
| \((1, 2, 3)\) | \(3\) | \(6\) | \(3\) | \(2\) |
| \((2, 2, 3)\) | \(2\) | \(5\) | \(3\) | \(2\) |
Như vậy, tổng số lượng ước trong tất cả các trường hợp là \(2 + 2 + 2 + 2 = 8\).
Phong là một học sinh rất say mê các hoạt động STEM và rất thích thực hiện những thí nghiệm thực tế. Trong một lần thí nghiệm, Phong đã đo nhiệt độ trung bình trong \(n\) ngày liên tiếp và được các kết quả là các số nguyên đôi một khác nhau.
Tiếp theo, Phong thực hiện các bước tách nhóm dữ liệu. Với mỗi bước, Phong sẽ tìm ngày có nhiệt độ cao nhất và ngày có nhiệt độ thấp nhất trong dãy, sau đó tách dữ liệu nhiệt độ của các ngày nằm trong đoạn giữa hai ngày này (kể cả hai ngày có nhiệt độ cao nhất và thấp nhất) thành một nhóm, và nối dữ liệu của các ngày còn lại thành một dãy mới (giữ nguyên thứ tự). Phong lặp lại quy trình này trên dãy mới cho đến khi dãy này trở thành dãy rỗng và đếm số nhóm đã tách được.
Phong thực hiện quy trình tách nhóm dữ liệu này với \(q\) bộ dữ liệu khác nhau, mỗi bộ dữ liệu là nhiệt độ trung bình của các ngày trong một đoạn liên tiếp từ ngày thứ \(l\) đến ngày thứ \(r\). Vì dữ liệu gồm rất nhiều ngày nên việc tính toán bằng tay có thể mất rất nhiều thời gian, Phong muốn nhờ bạn viết một chương trình tính nhanh số nhóm mà Phong tách được. Bạn hãy giúp Phong tính toán thông tin này nhé.
Test 1
7 3
5 2 8 1 9 3 7
1 7
2 6
1 3
4
3
2