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

Ciel và buổi khiêu vũ

Đề bài

Mô tả

Trong một phòng khiêu vũ có N chàng trai và M cô gái, tất cả đều chưa từng nhảy với ai. Sẽ có một số bản nhạc được phát; trong mỗi bản nhạc có đúng một chàng trai và một cô gái cùng nhảy.

Có một luật đặc biệt: trong mỗi cặp nhảy, chàng trai phải là người lần đầu tiên nhảy, hoặc cô gái phải là người lần đầu tiên nhảy (tức là trước đó người đó chưa nhảy với bất kỳ ai).

Hãy lập lịch sao cho số bản nhạc được nhảy là nhiều nhất.

Dữ liệu vào

Một dòng duy nhất chứa hai số nguyên NM: số chàng trai và số cô gái.

Các chàng trai được đánh số từ 1 đến N, các cô gái được đánh số từ 1 đến M.

Dữ liệu ra

Dòng đầu tiên in ra K: số bản nhạc nhiều nhất có thể nhảy.

K dòng tiếp theo, mỗi dòng in ra hai số nguyên là chỉ số của chàng trai và cô gái nhảy trong bản nhạc đó, theo đúng thứ tự thời gian.

Nếu có nhiều lịch tối ưu, in ra lịch bất kỳ.

Ràng buộc

  • 1N,M100

Ví dụ

Input Output Giải thích
2 1 2
1 1
2 1
Bản nhạc 1: cả hai đều lần đầu nhảy. Bản nhạc 2: chàng trai 2 lần đầu nhảy (cô gái 1 đã nhảy rồi) nên vẫn hợp lệ.
2 2 3
1 1
1 2
2 1
Bản nhạc 2: cô gái 2 lần đầu nhảy. Bản nhạc 3: chàng trai 2 lần đầu nhảy. Không thể nhảy đủ 4 bản vì cặp còn lại (2,2) có cả hai người đều đã nhảy.

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