1.3开始了,贪心专题。
1 /* 2 ID: cuizhe 3 LANG: C++ 4 TASK: milk 5 */ 6 #include <iostream> 7 #include <cstdio> 8 #include <cstring> 9 #include <cstdlib> 10 #include <map> 11 #include <algorithm> 12 using namespace std; 13 struct node 14 { 15 int price; 16 int vol; 17 }p[10001]; 18 int cmp(const node &a,const node &b) 19 { 20 if(a.price < b.price) 21 return 1; 22 else 23 return 0; 24 } 25 int main() 26 { 27 int n,m,i; 28 long long ans; 29 freopen("milk.in","r",stdin); 30 freopen("milk.out","w",stdout); 31 scanf("%d%d",&n,&m); 32 for(i = 1;i <= m;i ++) 33 { 34 scanf("%d%d",&p[i].price,&p[i].vol); 35 } 36 sort(p+1,p+m+1,cmp); 37 ans = 0; 38 for(i = 1;i <= m;i ++) 39 { 40 if(p[i].vol > n) 41 { 42 ans += p[i].price*n; 43 break; 44 } 45 ans += p[i].price*p[i].vol; 46 n -= p[i].vol; 47 } 48 printf("%lld\n",ans); 49 return 0; 50 }