Trên mặt phẳng tọa độ có \(M\) địa điểm có thể đặt cửa hàng pizza và \(N\) khu dân cư. Sắn sẽ chọn đúng \(K\) trong \(M\) địa điểm để mở cửa hàng. Mỗi cửa hàng phục vụ mọi khu dân cư nằm trong hình tròn tâm tại cửa hàng, bán kính \(R\) (khoảng cách từ khu dân cư đến cửa hàng nhỏ hơn hoặc bằng \(R\), khu nằm trên đường tròn cũng được phục vụ).
Khu dân cư thứ \(j\) có tọa độ \((x_j, y_j)\) và \(s_j\) người. Một khu được phục vụ nếu nó nằm trong vùng phục vụ của ít nhất một cửa hàng đã mở, và khi đó cả \(s_j\) người đều được tính (một khu nằm trong nhiều vùng phục vụ vẫn chỉ tính một lần).
Hãy chọn \(K\) địa điểm để tổng số người được phục vụ là lớn nhất, và in ra giá trị lớn nhất đó.
Input
- Dòng đầu gồm hai số nguyên \(K\) và \(R\).
- Dòng thứ hai gồm số nguyên \(M\) là số địa điểm có thể mở cửa hàng.
- \(M\) dòng tiếp theo, mỗi dòng gồm hai số nguyên \(X_i, Y_i\) là tọa độ của địa điểm thứ \(i\).
- Dòng tiếp theo gồm số nguyên \(N\) là số khu dân cư.
- \(N\) dòng cuối, mỗi dòng gồm ba số nguyên \(x_j, y_j, s_j\): tọa độ và số dân của khu dân cư thứ \(j\).
Output
In ra một số nguyên là số người tối đa có thể được phục vụ.
Constraints
- \(1 \le K \le 10\), \(1 \le R \le 500\)
- \(K \le M \le 20\)
- \(1 \le N \le 100\)
- Mọi tọa độ nằm trong đoạn \([-1000, 1000]\)
- \(1 \le s_j \le 100\)
Sample Input 1
2 3
4
0 0
6 0
3 4
9 4
5
1 1 4
3 0 6
5 1 2
7 3 5
4 4 3
Sample Output 1
15
Sample Input 2
1 2
3
0 0
5 5
9 9
3
1 1 5
5 6 7
9 8 2
Sample Output 2
7
Explanation
Ở ví dụ 1, mở cửa hàng tại \((0,0)\) phục vụ hai khu đầu (\(4+6=10\) người) và cửa hàng tại \((9,4)\) phục vụ khu \((7,3)\) (\(5\) người), tổng \(15\) là lớn nhất. Ở ví dụ 2 chỉ được mở một cửa hàng; chọn \((5,5)\) phục vụ khu \((5,6)\) với \(7\) người.
Bình luận
Đăng nhập để bình luận
Chưa có bình luận nào.