标签:
1 #include <stdio.h> 2 #include <algorithm> 3 4 struct treasure { 5 int p, m; 6 bool operator<(const treasure&x) const { 7 return p>x.p; 8 } 9 }arr[101]; 10 11 #define p(i) arr[i].p 12 #define m(i) arr[i].m 13 int main() 14 { 15 int v, n; 16 while(~scanf("%d%d", &v, &n)&&v) { 17 for(int i=0; i<n; i++) 18 scanf("%d%d", &p(i), &m(i)); 19 std::sort(arr, arr+n); 20 int res=0; 21 for(int i=0; i<n&&v; i++) { 22 if(v<m(i)) { 23 res+=p(i)*v; 24 break; 25 }else { 26 res+=p(i)*m(i); 27 v-=m(i); 28 } 29 } 30 printf("%d\n", res); 31 } 32 return 0; 33 }
HDOJ 2111. Saving HDU 贪心 结构体排序
标签:
原文地址:http://www.cnblogs.com/BlackStorm/p/4940939.html