| # | Bài tập | Điểm | Thời gian: | Giới hạn bộ nhớ |
|---|---|---|---|---|
| 1 | USACO 2024 February Contest, Silver, Target Practice II | 100 (p) | 2.5s | 256M |
| 2 | USACO 2024 February Contest, Silver, Test Tubes | 100 (p) | 2.0s | 256M |
| 3 | USACO 2024 February Contest, Silver, Moorbles | 100 (p) | 2.0s | 256M |
Lưu ý: Giới hạn thời gian cho bài này là 2.5s, gấp 1.25 so với mặc định.
Lưu ý: Bài tập có thể sử dụng đến những số rất lớn, nên sử dụng kiểu số nguyên 64-bit (VD: "long long" trong C/C++).
Thế vận hội Moolympics đang đến gần và nông dân John đang gấp rút huấn luyện những con bò của mình bắn cung để đạt được huy chương vàng. Nông dân John đã thiết lập bài luyện tập có thể mô tả trên mặt phẳng toạ độ \(2D\)
Ngoài ra,mỗi con bò có một góc "tập trung" mà chúng đang luyện tập. Theo đó, chúng sẽ quay một góc cố định mỗi khi bắn. Biết rằng nếu cú bắn của chúng bay thẳng từ vị trí của chúng đến cạnh mà chúng được chỉ định, độ dốc đường bay của mũi tên của con bò thứ \(i\) có thể được mô tả bởi \(s_i\) (\(0 < |s_i| < 10^9\))
Để thẩm định kĩ năng của những con bò, nông dân John muốn những con bò đứng sát nhau nhất có thể. Nếu nông dân John chỉ định mục tiêu của những con bò một cách tối ưu và đặt chúng trên trục tung, khoảng cách nhỏ nhất giữa hai con bò cách xa nhau nhất sẽ là bao nhiêu hay chúng sẽ luôn trượt bài luyện tập.
Dữ liệu vào có tất cả \(T\) (\(1 \leq T \leq 10\)) test case riêng biệt. Dữ liệu đảm bảo tổng \(N\) của tất cả các test case không quá \(4 \times 10^4\).
Test 1
3
2 1
1 3 6
4 6 3
1 -1 2 -2 3 -3 4 -4
2 1
1 3 6
4 6 3
1 1 2 2 3 3 4 4
2 1
1 3 3
4 6 3
1 -1 2 -2 3 -3 4 -4
17
-1
11
Bessie gần đây đã học hóa. Hiện tại, cô có hai loại hóa chất có hai màu khác nhau \(1,2\) và không thể hòa trộn với nhau. Cô có hai ống nghiệm có sức chứa vô hạn được đổ đầy bởi \(N\) (\(1 \leq N \leq 10^5\)) đơn vị của hai chất nói trên. Do hai loại chất lỏng không hòa trộn, khi hai loại chất lắng xuống, chúng chia thành các lớp màu riêng biệt trong hai ống nghiệm và có thể được mô tả bới hai xâu \(f\) và \(s\), trong đó \(f_1, f_2, \ldots, f_N\) mô tả chất lỏng trong ống nghiệm thứ nhất và \(s_1, s_2, \ldots, s_N\) mô tả chất lỏng trong ống nghiệm thứ hai từ dưới lên. Dữ liệu đảm bảo có ít nhất một đơn vị của cả hai chất tồn tại trong 2 ống nghiệm.
Bessie muốn tách hai loại chất lỏng này ra sao cho mỗi ống nghiệm chỉ có duy nhất một loại chất lỏng. Cô tìm thấy một ống nghiệm thứ \(3\) trong nhà kho và sử dụng nó để giúp tách hai chất lỏng ra. Mỗi khi Bessie thực hiện một lần "rót", cô sẽ đổ toàn bộ phần chất lỏng cùng màu phía trên cùng của một ống nghiệm vào một ống nghiệm khác.
Hãy giúp Bessie tính toán số lần đổ ít nhất để tách hai chất lỏng và cách đổ chi tiết. Lưu ý rằng sau khi kết thúc, ống nghiệm thứ \(3\) cần phải rỗng và \(2\) ống nghiệm ban đầu phải chứa \(2\) màu khác nhau.
Bessie có \(T\) (\(1 \leq T \leq 10\)) câu hỏi và có yêu cầu \(P\) cho mỗi câu hỏi như sau:
Giả sử \(M\) là số lần rót ít nhất để tách hai loại chất lỏng:
Ngoài ra, dữ liệu đảm bảo \(T=10\) cho tất cả các input ngoài test mẫu.
Test 2
6
4 1
1221
2211
4 2
1221
2211
4 3
1221
2211
6 3
222222
111112
4 3
1121
1222
4 2
1121
1222
4
4
1 2
1 3
2 1
3 2
4
1 2
1 3
2 1
3 2
1
2 1
5
2 3
1 2
1 3
1 2
3 1
6
2 3
1 2
1 3
1 2
2 1
3 2
Bessie và Elsie đang chơi một trò chơi tên là Moorbles. Trong trò chơi này, hai cô bò sẽ có một số lượng bi ban đầu nhất định. Sau đó, Bessie nắm chặt \(A\) viên bi trong lòng bàn tay và sau đó Elsie phải đoán xem số lượng bi là lẻ hay chẵn. Nếu Elsie đoán đúng, cô sẽ thắng được số bi trong tay Bessie, ngược lại nếu đoán sai, cô ấy sẽ mất cho Bessie \(A\) viên bi. Trò chơi sẽ tiếp tục đến khi có một người mất toàn bộ số bi.
Sau một vài ván chơi, Elsie còn lại \(N\) (\(1 \leq N \leq 10^9\)). Cô ấy đoán rằng mình không thể chiến thắng nên đã cố gỡ hòa. Sau một hồi chơi, Elsie đã dần đọc vị được Bessie và biết được một số thói quen sau: ở lượt thứ \(i\), Bessie sẽ có tỉ lệ đưa ra \(K\) (\(1 \leq K \leq 4\)) một trong 4 số lượng bi nhất định. Chỉ còn \(M\) (\(1 \leq M \leq 3.10^5\)) lượt chơi nữa Bessie sẽ chán và ngừng chơi, hãy giúp Elsie không thua cho dù Bessie có chơi kiểu gì đi nữa!
Subtask 1: \(M \leq 16\).
Subtask 2: \(M \leq 1000\).
Subtask 3: Không có ràng buộc gì thêm.
Test 1
2
10 3 2
2 5
1 3
1 3
10 3 3
2 7 5
8 3 4
2 5 6
Even Even Odd
-1
-Trong test case đầu tiên, chuỗi lượt chơi tối thiểu theo thứ tự từ điển là "Even Even Even", nhưng Bessie có thể làm Elsie thua trong trường hợp này bằng cách đầu tiên chơi 5, làm giảm số bi của Elsie từ 10 còn 5, sau đó chơi 3, làm giảm số bi của Elsie từ 5 còn 2, và cuối cùng chơi 3, làm mất toàn bộ số bi của cô ấy.
-Nếu Elsie chơi theo chuỗi lượt chơi chính xác "Even Even Odd", thì ngay cả khi Bessie chơi theo cách đó, khi cô ấy chơi 3, Elsie sẽ nhận thêm 3 viên bi, làm tăng số bi của cô ấy lên 5. Có thể chứng minh rằng Bessie không thể chơi theo cách khác để lấy hết số bi của Elsie nếu Elsie chơi "Even Even Odd".
-Trong trường hợp thứ hai, có thể chứng minh rằng cho bất kỳ chuỗi lượt chơi nào mà Elsie có thể chọn, Bessie có thể lấy hết số bi của Elsie.