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

Bẫy chuột

Đề bài

Mô tả

Trên mặt phẳng tọa độ có n con chuột. Một chiếc bẫy hình chữ nhật có các cạnh song song với hai trục tọa độ, hai góc đối diện nằm tại (x1,y1)(x2,y2).

Con chuột thứ i xuất phát tại vị trí (rix,riy) tại thời điểm 0 và di chuyển thẳng đều với vận tốc (vix,viy): sau mỗi giây, hoành độ tăng thêm vix và tung độ tăng thêm viy.

Ban đầu bẫy đang mở nên chuột di chuyển tự do. Tại một thời điểm bất kỳ, ta có thể đóng bẫy đúng một lần và bắt được tất cả những con chuột đang nằm hoàn toàn bên trong hình chữ nhật (nằm trên biên không tính là bên trong).

Hãy tìm thời điểm t nhỏ nhất, không âm, sao cho nếu đóng bẫy tại thời điểm t thì bắt được cả n con chuột. Nếu không tồn tại thời điểm như vậy, in ra 1.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n: số con chuột.
  • Dòng thứ hai chứa bốn số nguyên x1,y1,x2,y2: tọa độ hai góc đối diện của bẫy.
  • Mỗi dòng trong n dòng tiếp theo chứa bốn số nguyên rix,riy,vix,viy: vị trí xuất phát và vận tốc của con chuột thứ i.

Dữ liệu ra

In ra một số thực duy nhất: thời điểm t nhỏ nhất cần tìm, hoặc 1 nếu không tồn tại.

Kết quả được chấp nhận nếu sai số tuyệt đối hoặc tương đối không vượt quá 106.

Ràng buộc

  • 1n105
  • 0x1x2105, 0y1y2105
  • 0rix,riy105
  • 105vix,viy105

Ví dụ

Input Output Giải thích
4
7 7 9 8
3 5 7 5
7 5 2 4
3 3 7 8
6 6 3 2
0.5714285714 Tại t=4/7, cả bốn con chuột đều nằm hoàn toàn bên trong hình chữ nhật [7,9]×[7,8].
4
7 7 9 8
0 3 -5 4
5 0 5 4
9 9 -1 -6
10 5 -7 -10
-1 Một số con chuột không bao giờ đi vào bên trong bẫy, nên không có thời điểm nào hợp lệ.
1
2 2 4 4
3 1 1 1
-1 Chuột nằm trong dải 2<x<4 khi t<1 nhưng chỉ vào dải 2<y<4 khi t>1: hai khoảng thời gian không giao nhau nên không bắt được.

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