Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
PTIT017C - ACM PTIT 2017 C - BỂ BƠI |
Một bể bơi có N (N ≤ 2) vòi nước. Vòi nước thứ i có tốc độ chảy vào bể là R[i] và nhiệt độ bằng C[i]. Ban đầu, tất cả các vòi nước đều tắt. Quản lý bể bơi muốn bơm đầy bể có thể tích bằng V, và nhiệt độ nước trong bể đúng bằng X. Anh quản lý chỉ mở mỗi vòi nước đúng 1 lần, và đóng lại khi nhiệm vụ của mình hoàn thành. Giả sử rằng nhiệt độ nước không bị thay đổi theo thời gian, các bạn hãy tính xem cần ít nhất bao nhiêu thời gian để có thể hoàn thành nhiệm vụ này. Thời gian bắt đầu tính từ lúc mở vòi nước đầu tiên.
Quy tắc cân bằng nhiệt: khi trộn nước loại 1 có nhiệt độ X1 và thể tích V1, loại 2 có nhiệt độ X2 và thể tích V2 sẽ thu được thể tích V1 + V2 nước có nhiệt độ bằng (X1*V1 + X2*V2) / (V1+V2).
Input
- Dòng đầu tiên là số lượng bộ test T (T ≤ 100).
- Mỗi test bắt đầu bởi số nguyên N (N ≤ 2), và 2 số thực V và X.
- N dòng tiếp theo, mỗi dòng gồm 2 số thực R[i] và C[i].
(0.0001 ≤ V, R[i] ≤ 100, 0.1 ≤ X, C[i] ≤ 99.9).
Output
- Với mỗi test in ra chữ “Case” kèm theo số thứ tự bộ test và đáp án tìm được (theo mẫu như trong ví dụ). Kết quả được in ra với đúng 3 chữ số sau dấu phẩy. Nếu không thể thực hiện được thì in ra “IMPOSSIBLE”.
Example
Input:
3
1 10.0000 50.0000
0.2000 50.0000
2 5.0000 99.9000
30.0000 99.8999
20.0000 99.7000
2 0.0003 13.5706
0.0005 13.5556
0.0011 88.8258
Output:
Case #1: 50.000
Case #2: IMPOSSIBLE
Case #3: 0.600
Giải thích test 1: Có 1 vòi nước, thời gian cần chờ bằng 10/0.2 = 50.
Được gửi lên bởi: | adm |
Ngày: | 2017-04-29 |
Thời gian chạy: | 1s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | ASM32-GCC ASM32 ASM64 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 |