码迷,mamicode.com
首页 > 其他好文 > 详细

L2-003 月饼

时间:2018-03-21 21:07:49      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:else   bre   +=   stream   iostream   pac   cstring   错误   double   

这个题不算难,只是需要点时间,但是我自己写的代码还有一个2分的样例过不去,实在找不出来哪里还有漏洞,下面是23分代码,大家可以借鉴同时找找我的错误漏洞在哪,评论指出来啊谢谢啦:

#include <iostream>
#include <string>
#include <cstring>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <algorithm>
using namespace std;
struct DD
{
    int a;
    int b;
    double c;
}A[2001];
bool cmp(DD a,DD b)
{
    return a.c>b.c;
}

int main()
{
    int n,we,i,j,num=0;
    double pri=0.0;
    scanf("%d%d",&n,&we);
    for(i=0;i<n;i++)
        scanf("%d",&A[i].a);
    for(i=0;i<n;i++)
        scanf("%d",&A[i].b);
        for(i=0;i<n;i++)
            A[i].c=A[i].b*1.0/A[i].a;
            sort(A,A+n,cmp);
            for(i=0;i<n;i++)
            {
                if(num+A[i].a<=we)
                {
                    num+=A[i].a;
                    pri+=A[i].b;
                }
                else
                {
                    pri+=A[i].c*1.0*(we-num);
                    break;
                }


            }
            printf("%.2f\n",pri);

}

 

L2-003 月饼

标签:else   bre   +=   stream   iostream   pac   cstring   错误   double   

原文地址:https://www.cnblogs.com/nr1999/p/8619274.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!