# 看了好久了,只有第一个AC,求助一下各位
查看原帖
# 看了好久了,只有第一个AC,求助一下各位
732794
tangmumao楼主2022/6/6 22:31
#include <stdio.h>
#include <stdlib.h>

int main()
{
   int n;
   double sum=0,c[105],t,p,q,m[105],v[105],w;
   scanf("%d%lf",&n,&t);
   for(int i=0;i<n;i++)
   {
        scanf("%lf%lf",&m[i],&v[i]);
        c[i]=v[i]/m[i];
   }
   for(int i=0;i<n-1;i++)
    for(int j=0;j<n-1-i;j++)
   {
       if(c[j]<c[j+1])
       {
           w=c[j];
           c[j]=c[j+1];
           c[j+1]=w;
           p=m[i];
           m[i]=m[i+1];
           m[i+1]=p;
           q=v[i];
           v[i]=v[i+1];
           v[i+1]=q;
       }
   }
   for(int i=0;i<n;i++)
   {
       if(t-m[i]>-0.0000001)
       {
           sum+=v[i];
           t-=m[i];
       }
       else
       {
           sum+=c[i]*t;
          break;
      }
   }
   printf("%.2lf",sum);


2022/6/6 22:31
加载中...