[Codeforces Round #160 (Div. 2)]C. Maxim and Discounts
地址:http://codeforces.com/contest/262/problem/C
快排 贪心
打折方式肯定选小的,买东西时从价格高的买起
用scanf, printf的效率比cin, cout高多了,一个78ms,一个250ms......差距
1 #include <iostream> 2 #include <algorithm> 3 #include <cstdio> 4 using namespace std; 5 6 int m,n; 7 8 bool cmp(int a,int b) 9 {return a>b;} 10 11 int main() 12 { 13 int i,j,d_c=0xfffffff,sum=0,in; 14 scanf("%d",&m); 15 for(i=0;i<m;i++) 16 { 17 scanf("%d",&in); 18 d_c=in<d_c?in:d_c; 19 } 20 scanf("%d",&n); 21 int *a=new int[n]; 22 for(i=0;i<n;i++) 23 { 24 scanf("%d",&a[i]); 25 } 26 sort(a,a+n,cmp); 27 i=0; 28 while(i<n) 29 { 30 j=0; 31 while(j<d_c && i<n) 32 { 33 sum+=a[i++]; 34 j++; 35 } 36 i+=2; 37 } 38 printf("%d\n",sum); 39 return 0; 40 }

浙公网安备 33010602011771号