标签:poj int turn style struct div clu pac ios
思路:
简单贪心,每次选择性价比最高的。
实现:
1 #include <iostream> 2 #include <cstdio> 3 #include <algorithm> 4 using namespace std; 5 6 struct node 7 { 8 int t, d; 9 }; 10 int n; 11 node a[100005]; 12 int sum[100005]; 13 14 bool cmp(const node & a, const node & b) 15 { 16 double x = a.d * 1.0 / a.t; 17 double y = b.d * 1.0 / b.t; 18 return x > y; 19 } 20 21 int main() 22 { 23 cin >> n; 24 for (int i = 0; i < n; i++) 25 { 26 scanf("%d %d", &a[i].t, &a[i].d); 27 } 28 sort(a, a + n, cmp); 29 sum[n - 1] = a[n - 1].d; 30 for (int i = n - 2; i >= 0; i--) 31 { 32 sum[i] = sum[i + 1] + a[i].d; 33 } 34 long long total = 0; 35 for (int i = 0; i < n - 1; i++) 36 { 37 total += sum[i + 1] * 2 * a[i].t; 38 } 39 cout << total << endl; 40 return 0; 41 }
poj3262 Protecting the Flowers
标签:poj int turn style struct div clu pac ios
原文地址:http://www.cnblogs.com/wangyiming/p/6579514.html