Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
P142SUMJ - ROUND 2J - Chia bánh |
Tí và Tèo hoàn thành tốt bài tập nên được cô giáo thưởng cho mỗi bạn một cái bánh. Tuy nhiên, chiếc của Tí là bánh socola còn chiếc của Tèo là bánh sữa. 2 bạn quyết định chia đôi mỗi phần của mình ra để tráo đổi cho nhau, như vậy là mỗi người sẽ đều được thưởng thức hai loại bánh.
Có một con dao trong tay, việc lần lượt chia từng chiếc bánh ra làm đôi không phải là quá khó. Tuy nhiên, Tí muốn Tèo hãy chỉ cắt 2 chiếc bánh này trong cùng một nhát cắt.
Tèo vẫn còn đang phân vân không biết nên cắt như thế nào? Các bạn hãy cùng giúp Tèo nhé!
Input
Dòng đầu tiên gồm số nguyên dương N là số đỉnh trong của chiếc bánh thứ nhất. N dòng tiếp theo, mỗi dòng gồm 2 số x_i, y_i miêu tả tọa độ đỉnh thứ i.
Dòng tiếp theo là số nguyên dương M, số đỉnh của chiếc bánh thứ hai. M dòng tiếp mô tả tọa độ các đỉnh của chiếc bánh thứ hai.
Giới hạn: 3 <= N, M <= 5000. Các tọa độ có giá trị tuyệt đối không vượt quá 1000.
Tọa độ các đỉnh được liệt kê theo chiều kim đồng hồ, và đảm bảo rằng hình dạng mỗi chiếc bánh là một đa giác lồi và mỗi hình nằm ở một bên của trục Oy.
Output
In ra 2 số thực A và B miêu tả đường thẳng y = Ax + B là đường thẳng mà Tèo sẽ cắt bánh, với độ chính xác 10^-2.
Đáp án luôn tồn tại và duy nhất.
Example
Test 1:
Input:
3
-6.000 1.000
-2.000 2.000
-5.000 6.000
5
1.000 -1.000
3.000 -2.000
6.000 0.000
4.000 3.000
1.000 2.000
Output:
-0.319961 1.556489
Test 2:
Input:
4
-5.000 -1.000
-3.000 -1.000
-3.000 6.000
-5.000 6.000
4
3.222 2.000
5.000 1.000
5.000 4.000
3.222 3.000
Output:
0.000000 2.500000
Được gửi lên bởi: | adm |
Ngày: | 2014-07-01 |
Thời gian chạy: | 5s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | C C++ 4.3.2 CPP JAVA PAS-FPC PYTHON PYTHON3 |