USACO 2020 - Swapity Swap
Xem PDF\(N\) con bò của Farmer John (\(1\le N\le 100\)) đang đứng thành một hàng. Với mỗi \(1\le i\le N\), con bò thứ \(i\) tính từ bên trái mang nhãn \(i\).
Farmer John đã nghĩ ra một bài tập thể dục buổi sáng mới cho đàn bò. Ông yêu cầu chúng lặp lại chính xác \(K\) lần (\(1\le K\le 10^9\)) quy trình gồm hai bước sau:
- Dãy bò hiện đang ở các vị trí \(A_1\ldots A_2\) tính từ bên trái đảo ngược thứ tự (\(1\le A_1<A_2\le N\)).
- Sau đó, dãy bò hiện đang ở các vị trí \(B_1\ldots B_2\) tính từ bên trái đảo ngược thứ tự (\(1\le B_1<B_2\le N\)).
Sau khi đàn bò đã lặp lại quy trình này đúng \(K\) lần, với mỗi \(1\le i\le N\), hãy in nhãn của con bò thứ \(i\) tính từ bên trái.
Phân nhóm
- Các test 2-3 thỏa mãn \(K\le 100\).
- Các test 4-13 không có ràng buộc bổ sung.
Dữ liệu vào
Dòng đầu tiên chứa \(N\) và \(K\). Dòng thứ hai chứa \(A_1\) và \(A_2\), dòng thứ ba chứa \(B_1\) và \(B_2\).
Dữ liệu ra
Trên dòng thứ \(i\) của kết quả, in nhãn của con bò thứ \(i\) tính từ bên trái sau khi kết thúc bài tập.
Ví dụ
Ví dụ 1
Input
7 2
2 5
3 7
Output
1
2
4
3
5
7
6
Giải thích
Ban đầu, thứ tự các con bò từ trái sang phải là \([1,2,3,4,5,6,7]\). Sau bước đầu tiên của quy trình, thứ tự là \([1,5,4,3,2,6,7]\). Sau bước thứ hai của quy trình, thứ tự là \([1,5,7,6,2,3,4]\). Lặp lại cả hai bước lần thứ hai sẽ thu được kết quả của ví dụ.
Nguồn
USACO 2020 February Contest, Bronze - Swapity Swap: https://usaco.org/index.php?page=viewproblem2&cpid=1013
Tác giả: Brian Dean.
Kỳ thi:
- USACO 2020 - Tháng 2 - Hạng Đồng (1 Tháng 2., 2020)
Bình luận