[BOJ 14051] Splitting Hares

View as PDF

Submit solution

Points: 1
Time limit: 15.0s
Memory limit: 512M

Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text

As you know, some bunnies are good bunnies, and some bunnies are bad bunnies.</p>

You are given the location of all the bunnies, and their “goodness” weight (a positive integer for good bunnies and a negative integer for bad bunnies). No two bunnies are at the same location. Divide them into two groups using a straight line such that the sum of the “goodness” of the bunnies on one side of the line is as large as possible. A bunny on the line is counted in the sum of the weights on both sides of the line.

입력 형식

The first line contains N (2 ≤ N ≤ 4000), the number of bunnies. The next N lines contain three space-separated integers: xi yi wi, which indicates that at the point (xi, yi) there is a bunny with a goodness weight of wi (−1 000 000 ≤ xi ≤ 1 000 000; −1 000 000 ≤ yi ≤ 1 000 000; −10 000 ≤ wi ≤ 10 000). The locations (xi, yi) will be distinct (i.e., there is no other j ≠ i such that (xi, yi) = (xj, yj)).

출력 형식

Output the maximum sum of weights that is possible by drawing a straight line and picking all the bunnies which are on one side of that line.

예제 입력

6
1 8 4
1 4 6
7 7 2
4 10 -3
4 6 -9
4 2 8

예제 출력

18

Comments

There are no comments at the moment.