Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
PTIT136I - Đào kho báu |
Tèo đang chơi trò chơi điện tử 2D đào kho báu. Một miếng đất có chiều rộng là W và chiều sâu là D. Ở dưới lòng đất có một khu vực đất quý hiếm chứa kho báu. Và dĩ nhiên, Tèo phải đào khu đất lên để lấy kho báu của mình. Tèo chỉ cần kho báu có diện tích A là đủ, nhưng anh không đào các hố nhỏ một, mà khoét tất cả khu đất lên.
Vùng đất chứa kho báu (middle layer) được ngăn cách với vùng đất thường bằng 2 hàm số là y1(x) và y2(x) thỏa mãn -D < y2(x) < y1(x) < 0 với mọi 0 <= x <= W. Các hàm số này được mô tả dưới dạng y(x) = p(x) / q(x), trong đó:
Các bạn hãy tính giúp Tèo xem cần đào sâu bao nhiêu để có thể lấy được vừa đủ kho báu có diện tích bằng A?
Input
Gồm nhiều bộ test. Mỗi bộ test bao gồm:
Dòng đầu tiên là 4 số W, D, A, K. Trong đó W, D (<= 10) là chiều rộng và chiều sâu của khu đất (2D). A là diện tích kho báu mà Tèo quan tâm. K (<= 8) là bậc cao nhất của hàm y1(x) và y2(x).
2 dòng tiếp theo, mỗi dòng chứa k+1 số mô tả p1(x) và q1(x), là tử số và mẫu số của f(x).
Các hệ số lần lượt là P1(0), P1(1),..., P1(k) và Q1(0), Q1(1), ... , Q1(k) (các hệ số < 109).
2 dòng tiếp tương tự, mô tả p2(x) và q2(x) của hàm số y2(x).
Với mỗi test luôn chỉ tồn tại một đáp số duy nhất. Và luôn thỏa mãn q1(x) ≠ 0, q2(x) ≠ 0
và -D < y2(x) < y1(x) < 0.
Output
Với mỗi test, hãy in ra chiều sâu d cần tìm. Độ chính xác là 10-5.
Example
Input:
6 9 4 1 -10 1 2 0 -16 1 2 0 8 10 14 4 -1392 864 -216 24 -1 1312 -864 216 -24 1 -73 36 -54 36 -9 17 -4 6 -4 1Output:
4.00000 5.51389
Được gửi lên bởi: | adm |
Ngày: | 2013-03-12 |
Thời gian chạy: | 20s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | ASM32-GCC ASM32 MAWK BC C CSHARP C++ 4.3.2 CPP CPP14 COFFEE LISP sbcl DART FORTH GO JAVA JS-RHINO JS-MONKEY KTLN OCT PAS-GPC PAS-FPC PERL PERL6 PROLOG PYTHON PYTHON3 PY_NBC R RACKET SQLITE SWIFT UNLAMBDA |