4 21 21 32 23 4Example Output
5Hint
Author
lin
总是超时。。。要用高级点的排序(
自己还不会用)
01 | #include<stdio.h> |
02 | struct stone |
03 | { |
04 | int w, p; |
05 | } a[10005], t; |
06 | int main() |
07 | { |
08 | int n, m, i, num, j, k; |
09 | while ( scanf ( "%d%d" , &n, &m) != EOF) |
10 | { |
11 | num = 0; |
12 | for (i = 0; i < n; i++) |
13 | { |
14 | scanf ( "%d%d" , &a[i].w, &a[i].p); |
15 | } |
16 | for (i = 0; i < n - 1; i++) |
17 | { |
18 | k = i; |
19 | for (j = i + 1; j < n; j++) |
20 | { |
21 | if (a[j].w < a[k].w) |
22 | { |
23 | k = j; |
24 | } |
25 | else if (a[j].w == a[k].w && a[j].p > a[k].p) |
26 | { |
27 | k = j; |
28 | } |
29 | } |
30 | if (k != i) |
31 | { |
32 | t = a[k]; |
33 | a[k] = a[i]; |
34 | a[i] = t; |
35 | } |
36 | } |
37 | i = 0; |
38 | while (m > 0) |
39 | { |
40 | num += a[i].p; |
41 | m--; |
42 | i++; |
43 | } |
44 | printf ( "%d/n" , num); |
45 | } |
46 | return 0; |
47 | } |
新闻热点
疑难解答