| # | Bài tập | Điểm | Thời gian: | Giới hạn bộ nhớ |
|---|---|---|---|---|
| 1 | USACO 2025 - The Best Lineup | 100 (p) | 4.0s | 512M |
| 2 | USACO 2025 - Vocabulary Quiz | 100 (p) | 4.0s | 512M |
| 3 | USACO 2025 - Transforming Pairs | 100 (p) | 4.0s | 512M |
Farmer John có \(N\) (\(1\leq N\leq 2\cdot 10^5\)) con bò trong một hàng \(a\). Con bò thứ \(i\) tính từ đầu hàng \(a\) được gắn nhãn là số nguyên \(a_i\) (\(1\leq a_i\leq N\)). Nhiều con bò có thể mang cùng một nhãn.
FJ sẽ tạo một hàng khác \(b\) theo cách sau:
FJ muốn tạo hàng \(b\) sao cho dãy nhãn trong \(b\) từ đầu đến cuối là lớn nhất theo thứ tự từ điển (xem ghi chú).
Trước khi tạo hàng \(b\), ông có thể thực hiện thao tác sau nhiều nhất một lần:
Giả sử FJ thực hiện tối ưu thao tác nói trên nhiều nhất một lần, hãy in ra dãy nhãn lớn nhất theo thứ tự từ điển của \(b\) mà ông có thể đạt được.
Mỗi dữ liệu vào gồm \(T\) (\(1\leq T\leq 100\)) trường hợp kiểm thử độc lập.
Dòng đầu tiên chứa \(T\).
Dòng đầu tiên của mỗi trường hợp kiểm thử chứa \(N\).
Dòng thứ hai của mỗi trường hợp kiểm thử chứa \(N\) số nguyên cách nhau bởi dấu cách \(a_1,a_2,\ldots,a_N\).
Đảm bảo tổng \(N\) trên tất cả các trường hợp kiểm thử không vượt quá \(10^6\).
Với mỗi trường hợp kiểm thử, in hàng \(b\) lớn nhất theo thứ tự từ điển trên một dòng mới.
Ví dụ 1
3
5
4 3 2 1 3
6
5 1 2 6 3 4
6
4 1 3 2 1 1
4 3 3 2 1
6 5 4
4 3 2 1 1
Trong trường hợp kiểm thử thứ nhất, FJ có thể chuyển con bò thứ năm đến ngay sau con bò thứ hai. Khi đó, \(a=[4,3,3,2,1]\). Có thể chứng minh \([4,3,3,2,1]\) cũng là \(b\) lớn nhất theo thứ tự từ điển.
Trong trường hợp kiểm thử thứ hai, FJ có thể chuyển con bò thứ tư lên đầu hàng.
Trong trường hợp kiểm thử thứ ba, FJ không cần thực hiện thao tác nào. Ông có thể tạo \(b\) bằng cách thêm mọi con bò ngoại trừ con bò thứ hai vào cuối \(b\). Có thể chứng minh kết quả này là \(b\) lớn nhất theo thứ tự từ điển.
Nhắc lại rằng một dãy \(s\) lớn hơn một dãy \(t\) theo thứ tự từ điển khi và chỉ khi một trong các điều sau đúng:
USACO 2025 February Contest, Silver — The Best Lineup. Tác giả: Chongtian Ma, Haokai Ma, Andrew Li.
Bessie đang giúp Elsie chuẩn bị cho bài kiểm tra từ vựng sắp tới. Các từ được kiểm tra sẽ lấy từ một ngân hàng gồm \(M\) từ phân biệt, trong đó không từ nào trong ngân hàng là tiền tố của một từ khác trong ngân hàng.
Khi ngân hàng còn từ, Bessie sẽ chọn một từ, xóa nó khỏi ngân hàng và đọc cho Elsie từng ký tự từ trái sang phải. Nhiệm vụ của Elsie là báo cho Bessie ngay khi cô có thể xác định duy nhất từ đó; khi ấy Bessie sẽ ngừng đọc.
Bessie đã quyết định đọc các từ trong ngân hàng theo thứ tự \(w_1,w_2,\dots,w_M\). Nếu Elsie trả lời nhanh nhất có thể, Bessie sẽ đọc bao nhiêu ký tự của mỗi từ?
Các từ được cho dưới dạng nén. Trước tiên, ta định nghĩa \(N+1\) (\(1\le N\le 10^6\)) từ phân biệt, rồi ngân hàng từ sẽ gồm tất cả những từ không phải là tiền tố của một từ khác. Các từ được định nghĩa như sau:
Dòng đầu tiên chứa \(N\), trong đó \(N+1\) là số từ được cho dưới dạng nén.
Dòng tiếp theo chứa \(p_1,p_2,\dots,p_N\), trong đó \(p_i\) biểu thị rằng từ thứ \(i\) được tạo bằng cách lấy từ thứ \(p_i\) rồi thêm một ký tự vào cuối.
Gọi \(M\) là số từ không phải tiền tố của bất kỳ từ nào khác. \(M\) dòng tiếp theo chứa lần lượt \(w_1,w_2,\dots,w_M\), nghĩa là từ thứ \(w_i\) sẽ được đọc ở vị trí thứ \(i\). Đảm bảo các từ được đọc tạo thành một hoán vị của các từ trong ngân hàng.
In ra \(M\) dòng, trong đó dòng thứ \(i\) chứa số ký tự của từ thứ \(i\) trong thứ tự đọc mà Bessie đọc.
Ví dụ 1
5
0 1 2 3 4
5
0
Có \(6\) từ được đánh số \(0\dots 5\). Từ \(5\) là từ duy nhất không phải tiền tố của một từ khác, nên nó là từ duy nhất trong ngân hàng. Nói chung, khi ngân hàng chỉ còn một từ, Elsie không cần nghe ký tự nào để xác định nó.
Ví dụ 2
4
0 0 1 1
4
3
2
2
1
0
Ngân hàng gồm các từ \(2\), \(3\) và \(4\).
Elsie cần hai ký tự để xác định từ \(4\) vì từ \(3\) và từ \(4\) có chung ký tự đầu tiên.
Khi Bessie đọc ký tự đầu tiên của từ \(3\), Elsie đã có đủ ký tự để xác định duy nhất nó vì từ \(4\) đã được đọc trước đó.
Ví dụ 3
4
0 0 1 1
2
3
4
1
2
0
USACO 2025 February Contest, Silver — Vocabulary Quiz. Tác giả: Benjamin Qi.
Bessie, cô bò thông thái, vừa khám phá ra một niềm say mê mới — phép thuật toán học! Một ngày nọ, khi đang chạy qua những cánh đồng trong trang trại của Farmer John, cô bắt gặp hai đống cỏ khô bị phù phép. Đống thứ nhất có \(a\) kiện và đống thứ hai có \(b\) kiện (\(1\le a,b\le 10^{18}\)).
Bên cạnh đống cỏ, bị vùi một nửa trong đất, cô tìm thấy một cuộn giấy cổ. Khi cô mở nó ra, những ký tự phát sáng hé lộ một lời tiên tri:
Để thực hiện sắc lệnh của Đại Đồng Cỏ, người được chọn phải biến đổi hai đống cỏ nhỏ bé này thành chính xác \(c\) và \(d\) kiện — không hơn, không kém.
Bessie nhận ra cô chỉ có thể thi triển hai phép thuật sau:
Cô phải thực hiện các thao tác tuần tự, nhưng có thể thực hiện chúng bao nhiêu lần và theo bất kỳ thứ tự nào. Cô phải đạt chính xác \(c\) kiện ở đống thứ nhất và \(d\) kiện ở đống thứ hai (\(1\le c,d\le 10^{18}\)).
Với mỗi trong số \(T\) (\(1\le T\le 10^4\)) trường hợp kiểm thử độc lập, hãy in ra số thao tác tối thiểu cần thiết để hoàn thành lời tiên tri; nếu không thể, in ra \(-1\).
Dòng đầu tiên chứa \(T\).
\(T\) dòng tiếp theo, mỗi dòng chứa bốn số nguyên \(a,b,c,d\).
In ra \(T\) dòng, là đáp án cho từng trường hợp kiểm thử.
Ví dụ 1
4
5 3 5 2
5 3 8 19
5 3 19 8
5 3 5 3
-1
3
-1
0
Trong trường hợp kiểm thử thứ nhất, điều này là không thể vì ban đầu \(b>d\), trong khi các thao tác chỉ có thể làm \(b\) tăng.
Trong trường hợp kiểm thử thứ hai, ban đầu hai đống có \((5,3)\) kiện. Trước tiên, Bessie có thể tăng đống thứ nhất thêm số lượng ở đống thứ hai, thu được \((8,3)\). Sau đó, Bessie tăng đống thứ hai thêm số lượng mới ở đống thứ nhất và thực hiện thao tác này hai lần, lần lượt thu được \((8,11)\) và \((8,19)\). Kết quả này khớp với \(c\) và \(d\), đồng thời đây là số thao tác tối thiểu để đạt được nó.
Lưu ý rằng trường hợp kiểm thử thứ ba có đáp án khác trường hợp thứ hai vì \(c\) và \(d\) bị hoán đổi (thứ tự hai đống là quan trọng).
Trong trường hợp kiểm thử thứ tư, không cần thao tác nào.
Ví dụ 2
1
1 1 1 1000000000000000000
999999999999999999
USACO 2025 February Contest, Silver — Transforming Pairs. Tác giả: Benjamin Qi.