| # | Bài tập | Điểm | Thời gian: | Giới hạn bộ nhớ |
|---|---|---|---|---|
| 1 | CEOI 2026 - Flower Cutting | 100 (p) | 4.0s | 256M |
| 2 | CEOI 2026 - Towers | 100 (p) | 1.0s | 256M |
| 3 | CEOI 2026 - Vim | 100 (p) | 1.0s | 256M |
Mỗi cặp hoa có thể được nối hoặc không nối. Hai hoa không nối \(a,b\) tự mọc thêm rễ nối nhau nếu tồn tại ít nhất hai hoa khác nhau \(c,d\) mà cả \(a\) và \(b\) đều nối với \(c,d\). Mọi rễ có thể mọc theo quy tắc này đã mọc xong.
Hãy cắt nhiều rễ hiện có nhất sao cho sau khi rễ mọc lại theo quy tắc trên, đồ thị thu được đúng như ban đầu.
Dòng đầu chứa \(n,m\). \(m\) dòng tiếp theo chứa \(a,b\), biểu thị hai hoa có rễ nối nhau. Các hoa được đánh số từ \(1\) đến \(n\). Đồ thị đầu vào được bảo đảm đã bão hòa theo quy tắc mọc rễ.
In số rễ lớn nhất có thể cắt.
Ví dụ
9 14
1 2
1 4
1 5
2 4
2 5
3 4
4 5
3 6
4 6
6 7
6 9
7 9
8 9
5 8
2
CEOI 2026 - Ngày 2, bài Flower Cutting.
Đề bài, dữ liệu kiểm thử và lời giải tham khảo được lấy từ nguồn CEOI 2026 chính thức.
Có \(n\) máy tính và \(m\) tháp ở các vị trí phân biệt trên một đường thẳng. Hãy ghép mọi máy tính thành các cặp khác nhau. Một dây nối hai máy có thể ghé bất kỳ dãy tháp nào theo thứ tự tùy ý, kể cả không ghé tháp nào; dây có thể đi ngang qua một tháp mà không ghé tháp đó.
Nếu dây đi từ vị trí \(a\) qua các tháp \(x_1,\ldots,x_k\) đến \(b\), độ dài là \(|a-x_1|+|x_1-x_2|+\cdots+|x_k-b|\). Điểm của dây là \(f\cdot u-l\), với \(u\) là số tháp khác nhau mà dây ghé. Các dây khác nhau có thể cùng ghé một tháp. Hãy tối đa tổng điểm.
Dòng đầu chứa \(T\). Mỗi test gồm ba dòng: \(n,m,f\); \(n\) vị trí máy tính \(a_1,\ldots,a_n\); và \(m\) vị trí tháp \(b_1,\ldots,b_m\).
In \(T\) số nguyên, mỗi số là tổng điểm lớn nhất của một test.
Ví dụ
4
2 1 100
1 10
11
4 1 10
2 4 6 8
20
4 1 10
2 4 6 8
5
6 3 10
2 13 4 8 6 10
5 1 9
89
-4
12
51
CEOI 2026 - Ngày 2, bài Towers.
Đề bài, dữ liệu kiểm thử và lời giải tham khảo được lấy từ nguồn CEOI 2026 chính thức.
Ban đầu văn bản Vim chỉ chứa một ký tự -, con trỏ ở ký tự này và clipboard rỗng. Cần thu được đúng \(n\) dấu trừ liên tiếp. Các lệnh được phép là:
h: sang trái, hoặc không làm gì nếu ở ký tự đầu.l: sang phải, hoặc không làm gì nếu ở ký tự cuối.Y: chép hậu tố từ con trỏ đến cuối văn bản vào clipboard.P: chèn một bản sao clipboard ngay trước con trỏ và đưa con trỏ tới ký tự vừa chèn cuối cùng; clipboard rỗng thì không làm gì.Với mỗi \(n\), hãy in số lệnh ít nhất và một dãy lệnh đạt số đó.
Dòng đầu chứa \(t\). \(t\) dòng tiếp theo, mỗi dòng chứa một giá trị \(n\).
Với mỗi test, in một dòng gồm số lệnh ít nhất, một dấu cách, và một dãy lệnh đạt đúng số đó.
Nếu mọi số lệnh tối ưu nhưng một dãy lệnh thiếu hoặc không hợp lệ, nhận một nửa điểm của phân nhóm đó.
Ví dụ
2
21
2
10 YPYPhPYPPP
2 YP
CEOI 2026 - Ngày 2, bài Vim.
Đề bài, dữ liệu kiểm thử và lời giải tham khảo được lấy từ nguồn CEOI 2026 chính thức.