Eeljiang 2015-11-10 05:10 采纳率: 0%
浏览 1663

acm水题求解,关于贪心算法

#include
#include
#include
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop /
    
int main(int argc, char
* argv) {
     int M,N;
     while(cin>>M>>N)
     {
          if(M==-1 && N==-1)
          break;
          {     double j[1001];
               double f[1001];
               double x[1001];
               for(int i=0; i                {
                    cin>>j[i];
                    cin>>f[i];
                                       
               }
               for(int k=0; k<N; k++)    //性价比
               {
                    x[k] = j[k] / f[k];
               }
              
               for(int i=0; i<N; i++)   //性价比排序
               {
                    for(int k=i+1; k<N; k++)
                    {
                         if(x[i]<x[k])
                         {
                              double temp = x[i];
                              x[i] = x[k];
                              x[k] = temp;
                              temp = j[i];
                              j[i] = j[k];
                              j[k] = temp;
                              temp = f[i];
                              f[i] = f[k];
                              f[k] = temp;
                             
                         }
                        
                    }
                   
               }
              
              
               double sum = 0;
               for(int i=0; i<N; i++)
               {
                    if(M==0)
                    break;
                   
                    for(int k=0; k<f[i]; k++)
                    {
                         if(M==0)
                         break;
                         sum = sum + x[i];
                         M--;                                                                     
                    }
               }
              
                
               cout<<setiosflags(ios::fixed)<<setprecision(3)<<sum<<endl;
              
          }
         
     }
    
     return 0;
}

    

  • 写回答

3条回答 默认 最新

  • Eeljiang 2015-11-10 05:10
    关注

    给的Wa,不知道该怎么测试。还不会其他高级的知识呢。

    评论

报告相同问题?

悬赏问题

  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向