hdu 2570

地址:http://acm.hdu.edu.cn/showproblem.php?pid=2570

题意:中文。

mark:很水的题。体积V都一样,排序后贪心就可以了。各种wa,主要还是浓度计算那儿装逼不想用实数,就用整数绕过去,结果各种想不清楚。

代码:

 1 # include <stdio.h>
 2 # include <stdlib.h>
 3 
 4 
 5 int p[110] ;
 6 
 7 int cmp(const void *a, const void *b)
 8 {
 9     return *(int*)a - *(int*) b ;
10 }
11 
12 
13 int main ()
14 {
15     int T, n, v, w, i ;
16     int cur_v, cur_p, max_v ;
17     double fp ;
18     scanf ("%d", &T) ;
19     while (T--)
20     {
21         scanf ("%d%d%d", &n, &v, &w) ;
22         for (i = 0 ; i < n ; i++)
23             scanf ("%d", &p[i]) ;
24         qsort (p, n, 4, cmp) ;
25         cur_v = cur_p = 0 ;
26         max_v = 0, fp = 0 ;
27         for (i = 0 ; i < n ; i++)
28         {
29             cur_v += v * 100 ;
30             cur_p += p[i] *v ;
31             if (cur_p * 100 <= w * cur_v)
32                 max_v = cur_v/100, fp = cur_p * 1.0 / cur_v ;
33         }
34         printf ("%d %.2lf\n", max_v, fp) ;
35     }
36     return 0 ;
37 }

转载于:https://www.cnblogs.com/lzsz1212/archive/2012/04/27/2472915.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值