apps_587
Submit solution
Points:
3
Time limit:
30.0s
Memory limit:
250M
Problem type
Allowed languages
Python
There are N pieces of sushi. Each piece has two parameters: "kind of topping" t_i and "deliciousness" d_i. You are choosing K among these N pieces to eat. Your "satisfaction" here will be calculated as follows:
- The satisfaction is the sum of the "base total deliciousness" and the "variety bonus".
- The base total deliciousness is the sum of the deliciousness of the pieces you eat.
- The variety bonus is x*x, where x is the number of different kinds of toppings of the pieces you eat. You want to have as much satisfaction as possible. Find this maximum satisfaction.
-----Constraints-----
- 1 \leq K \leq N \leq 10^5
- 1 \leq t_i \leq N
- 1 \leq d_i \leq 10^9
- All values in input are integers.
-----Input----- Input is given from Standard Input in the following format: N K t_1 d_1 t_2 d_2 . . . t_N d_N
-----Output----- Print the maximum satisfaction that you can obtain.
-----Sample Input----- 5 3 1 9 1 7 2 6 2 5 3 1
-----Sample Output----- 26
If you eat Sushi 1,2 and 3:
- The base total deliciousness is 9+7+6=22.
- The variety bonus is 2*2=4. Thus, your satisfaction will be 26, which is optimal.
Comments