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

Sấp hay Ngửa

Đề bài

Mô tả

Vasya và Petya chơi trò tung đồng xu. Đầu tiên Vasya tung x lần, sau đó Petya tung y lần. Mỗi lần ra mặt ngửa, người tung được cộng 1 điểm; ra mặt sấp thì không ai được điểm. Người có nhiều điểm hơn khi kết thúc là người thắng.

Trọng tài Valera đã quên mất tỉ số chính xác, nhưng ông chắc chắn nhớ được ba điều:

  • Trong suốt ván đấu, Vasya ra mặt ngửa ít nhất a lần.
  • Petya ra mặt ngửa ít nhất b lần.
  • Người thắng ván đấu là Vasya (Vasya có số điểm nhiều hơn hẳn Petya).

Gọi c là số lần Vasya ra mặt ngửa và d là số lần Petya ra mặt ngửa. Một kết cục (c,d) là hợp lệ nếu acx, bdyc>d.

Hãy liệt kê tất cả các kết cục hợp lệ không mâu thuẫn với trí nhớ của Valera.

Dữ liệu vào

Một dòng duy nhất chứa bốn số nguyên x, y, a, b cách nhau bởi dấu cách.

Dữ liệu ra

Dòng đầu in số nguyên n, số kết cục hợp lệ. Trên n dòng tiếp theo, mỗi dòng in một cặp số nguyên ci, di (số lần ra mặt ngửa của Vasya và Petya) cách nhau bởi dấu cách.

In các cặp (ci,di) theo thứ tự tăng dần nghiêm ngặt: cặp (p1,q1) nhỏ hơn cặp (p2,q2) nếu p1<p2, hoặc p1=p2q1<q2.

Ràng buộc

  • 1ax100
  • 1by100

Ví dụ

Input Output Giải thích
3 2 1 1 3
2 1
3 1
3 2
Vasya ra ngửa từ 1 đến 3 lần, Petya từ 1 đến 2 lần, và Vasya phải hơn Petya. Các cặp thỏa mãn: (2,1), (3,1), (3,2).
2 4 2 2 0 Vasya ra ngửa 2 lần (vì a=x=2), Petya ít nhất 2 lần. Không thể có c>d nên không có kết cục nào.

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