Bài Toán Phân Công

Đề bài

Mô tả

n công nhân và n công việc. Mỗi công nhân phải thực hiện đúng một công việc, và mỗi công việc phải được giao cho đúng một công nhân.

Chi phí để công nhân i thực hiện công việc jcij. Tìm cách phân công sao cho tổng chi phí nhỏ nhất, và in ra cách phân công đó.

Dữ liệu vào

Dòng đầu tiên chứa số nguyên n — số công nhân và số công việc.

  • n dòng tiếp theo, mỗi dòng chứa n số nguyên ci1,ci2,,cin — chi phí cho công nhân i thực hiện từng công việc.

Dữ liệu ra

Dòng đầu tiên in tổng chi phí nhỏ nhất.

  • n dòng tiếp theo, mỗi dòng in hai số nguyên ab — công nhân a được giao công việc b.

Ràng buộc

  • 1n200
  • 1cij1000

Ví dụ

Input Output Giải thích
4
17 8 16 9
7 15 12 19
6 9 10 11
14 7 13 10
33
1 4
2 1
3 3
4 2
Công nhân 1→công việc 4 (9), công nhân 2→công việc 1 (7), công nhân 3→công việc 3 (10), công nhân 4→công việc 2 (7). Tổng: 33.

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