zoukankan      html  css  js  c++  java
  • 乙_1020 月饼 (25分)

    问题描述:

    总结:

    忘记break;一直无法找见错误;

    代码:

    #include <iostream>
    #include <cstring>
    #include <algorithm>
    #include <cstdio>
    #include <algorithm>
    //#include <sstream>
    //#include <cmath>
    //#include <stack>
    using namespace std;
    struct mc{
    double pr,num,one ; 
     
    }m[1010];
    bool cmp(mc a, mc b){
     
     return a.one>b.one ;
     
    }
     

    int main()
    {
     int n ,d ;
         
     cin >> n >>  d;
     
    for(int i=0;i<n;i++) 
        cin >>   m[i].num ;
    for(int i=0 ; i<n;i++)    {
       cin >>  m[i].pr;  
      m[i].one = m[i].pr/m[i].num;          // 按单价排序
    }
    //for(int i=0 ; i<n;i++)    {
    //   cout <<  m[i].one << " hh"<<  m[i].pr<< " hh"<< m[i].num <<endl;
    //}
    //
    sort(m,m+n,cmp);

     double sum =0;
    for(int i=0;i<n;i++){ 
      if((d-m[i].num)>0)  {
       sum += m[i].pr;
       d = d-m[i].num;
      }
      else {
       
       sum +=  d*m[i].one;
       break;                              // key
      }
    }
     printf("%.2f",sum);
     
         return 0;
    }

  • 相关阅读:
    OnContextMenu事件
    wireshark教程
    常见的算法题:逆行单一列表
    GPIO
    USB OTG简要
    软测验点---平衡二叉树
    SSL工作原理
    CFileDialog 使用简单介绍
    eclipse在maven项目交付svn忽略简介
    四个漂亮CSS样式表
  • 原文地址:https://www.cnblogs.com/xueshadouhui/p/12989470.html
Copyright © 2011-2022 走看看