trang chủ / bài tập / redistgft

Phân Phối Quà Tặng

Đề bài

Mô tả

Farmer John có N món quà (đánh số từ 1 đến N) cho N con bò (đánh số từ 1 đến N). Mỗi con bò có một danh sách ưu tiên, là một hoán vị của N món quà, trong đó quà xuất hiện sớm hơn được ưa thích hơn.

Ban đầu, quà i được trao cho bò i. Các con bò có thể trao đổi quà với nhau, với điều kiện: sau khi trao đổi, mỗi con bò phải nhận được cùng món quà ban đầu hoặc một món quà mà nó ưa thích hơn.

Với mỗi con bò i, hãy tìm món quà được ưa thích nhất mà nó có thể nhận được trong một phân phối hợp lệ bất kỳ.

Dữ liệu vào

  • Dòng 1: Số nguyên N
  • N dòng tiếp theo: Dòng thứ i chứa hoán vị biểu diễn danh sách ưu tiên của bò i

Dữ liệu ra

  • N dòng, dòng thứ i chứa món quà được ưa thích nhất mà bò i có thể nhận.

Ràng buộc

  • 1N500

Ví dụ

Input Output Giải thích
4
1 2 3 4
1 3 2 4
1 2 3 4
1 2 3 4
1
3
2
4
Bò 2 và bò 3 có thể đổi quà: bò 2 nhận quà 3 (ưa thích hơn quà 2), bò 3 nhận quà 2 (ưa thích hơn quà 3). Bò 1 và 4 giữ nguyên.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0