zoukankan      html  css  js  c++  java
  • HDU1009

     1 #include<stdio.h>
     2 #include<stdlib.h>
     3 struct gg
     4 {
     5     int j;
     6     int f;
     7     double p;
     8 }gl[1005],tp;
     9 int cmp(const void *a,const void *b)
    10 {
    11     return (*(struct gg*)b).p>(*(struct gg*)a).p?1:-1;
    12 }
    13 int main()
    14 {
    15     int m,n,i;
    16     double left,sum;
    17     while(scanf("%d%d",&m,&n)==2&&(m!=-1)&&(n!=-1))
    18     {
    19         for(i=0;i<n;i++)
    20         {
    21             scanf("%d%d",&gl[i].j,&gl[i].f);
    22             gl[i].p=1.0*gl[i].j/gl[i].f;
    23         }
    24         qsort(gl,n,sizeof(gl[0]),cmp);
    25         left=m*1.0;
    26         sum=0.0;
    27         for(i=0;i<n&&left>=0;i++)
    28         {
    29             if(left>=gl[i].f)
    30             {
    31                 sum=sum+1.0*gl[i].j;
    32                 left=left-1.0*gl[i].f;
    33                 //if(left==0)break;
    34             }
    35             else
    36                 if(left>=0&&left<gl[i].f)
    37             {
    38                 sum=sum+(gl[i].p)*left;
    39                 left=left-(gl[i].p)*left;
    40                 //left=0;
    41                 //break;
    42             }
    43         }
    44         printf("%.3lf\n",sum);
    45     }
    46     return 0;
    47 }
    keep moving...
  • 相关阅读:
    3185 队列练习 1 3186 队列练习 2
    1063 合并果子
    堆排序
    奇怪的电梯
    3411 洪水
    2010 求后序遍历
    1729 单词查找树
    3137 栈练习1
    2821 天使之城
    括弧匹配检验(check.cpp)
  • 原文地址:https://www.cnblogs.com/xxx0624/p/keepmoving.html
Copyright © 2011-2022 走看看