最优装载问题(将一批集装箱装上一艘载重为轮船,其中集装箱i的重量为Wi(0<=i<=n-1) 最优装载问题是指在装载体积不受限制的情况下,求使得集装箱数目最多的装载方案 )
最优装载问题是将一批集装箱装上一艘载重为轮船,其中集装箱i的重量为Wi(0<=i<=n-1)
最优装载问题是指在装载体积不受限制的情况下,求使得集装箱数目最多的装载方案
e.g: 设有重量为(4,6,3,5,7,2,9)的7个集装箱,轮船的载重为26,求最优解
选择策略: 重量最轻者先装,可产生最优解
#include<iostream>
using namespace std;void boxWeightSort(int boxWeight[],int boxNumber){//从小到大排序 ---冒泡排序 int temp=0;for(int j=0;j<boxNumber-1;j++ ){for(int i=0;i<boxNumber-1-j;i++){if(boxWeight[i]>boxWeight[i+1]){temp=boxWeight[i];boxWeight[i]=boxWeight[i+1];boxWeight[i+1]=temp;}}}
}//求集装箱数目
int selectBoxCount(int boxWeight[],int boxNumber,int boatWeight){int sum=0,count=0; //sum:集装箱重量加和,count:集装箱数目for(int i =0;i<boxNumber;i++){ sum+=boxWeight[i];if(sum<=boatWeight){count++;}elsebreak;}return count;
} int main(){cout<<"请输入轮船的载重量: "; int boatWeight;cin>>boatWeight; cout<<"\n 请输入集装箱的总数:"; int boxNumber;cin>>boxNumber;cout<<"\n 请输入这些集装箱各自的重量:"; int boxWeight[boxNumber];for(int i=0;i<boxNumber;i++){cin>>boxWeight[i];} cout<<"这些集装箱的重量按升序排列后显示如下:"<<endl; boxWeightSort(boxWeight,boxNumber); for(int i=0;i<boxNumber;i++){cout<<boxWeight[i]<<"\t";} count<<endl; int count=selectBoxCount(boxWeight,boxNumber,boatWeight); cout<<"在轮船重载为"<<boatWeight<<"的情况下,轮船最多装载"<<count<<"个集装箱."<<endl;cout<<"装载的集装箱重量显示如下:"<<endl;for(int i=0;i<count;i++){cout<<boxWeight[i]<<"\t";} return 0;
}
最优装载问题(将一批集装箱装上一艘载重为轮船,其中集装箱i的重量为Wi(0<=i<=n-1) 最优装载问题是指在装载体积不受限制的情况下,求使得集装箱数目最多的装载方案 )相关推荐
- 进一步封装axios并调用其读取数据(吐槽~在安卓9.0以下或者IOS10.X以下手机端H5页面不支持,在这两种情况下的系统只能使用ajax或者原生js请求后台数据)
注意!!!(修改于2020年7月18日) 在安卓9.0以下或者IOS10.X以下手机端H5页面不支持,在这两种情况下的系统只能使用ajax或者原生js请求后台数据 报错截图如下 报错内容: {&quo ...
- 不停应用重启oracle数据库,此类情况下解决Oracle数据库重启的四种方案
原题:Oracle数据库重启(内存参数numperm_global相关) 故障描述 Oracle数据库发生重启. 系统环境 AIX 6100-07-05-1228 Oracle 11g 故障分析 首先 ...
- 面试官问:在读多写少的情况下,如何优化 MySQL 的数据查询方案
作者 | 面试官问 责编 | 张文 来源 | 面试官问(ID:interviewer_asked) 面试官问:假设你负责的某业务在双十一期间要搞运营活动,公司投入了大量的营销费用进行推广,此举 ...
- 接口开发指的是什么_企业在什么情况下要选择定制开发软件
软件定制开发是指软件开发商依据我们的需求停止量身定制的开发,软件定制开发相关于单纯产品的施行周期长.本钱高.风险大.假如根据定制开发的工作量或水平来分,我们能够分为完整定制开发和局部定制开发,完整定制 ...
- sd.js帮助您简化繁重的获取数据、存储数据(CRUD)骚操作(吐槽~在安卓9.0以下或者IOS10.X以下手机端H5页面不支持,在这两种情况下的系统只能使用ajax或者原生js请求后台数据)
原生sd.js---------------------------------------------------------------- const API_ROOT_URL = "h ...
- Echarts除了tooltip其它的标签暂时都不支持html情况下label标签加背景图片的美化方案
tooltip组件html的用法 tooltip: {show: true,backgroundColor: "transparent",formatter: function ( ...
- 有一批共n个集装箱要装上2艘载重量分别为C1和C2的轮船,其中集装箱i的重量为wi,且 装载问题要求确定,是否有一个合理的装载方案可将这n
一.问题描述 有一批共n个集装箱要装上2艘载重量分别为C1和C2的轮船,其中集装箱i的重量为wi,且 ∑i=1nwi≤c1+c2\sum _{i=1}^{n} wi\leq c1+c2∑i=1nwi ...
- 计算机求和公式IFEROR,如何在excel表格有错误值的情况下进行求和
如何在excel表格有错误值的情况下进行求和 腾讯视频/爱奇艺/优酷/外卖 充值4折起 今天给大家介绍一下如何在excel表格有错误值的情况下进行求和的具体操作步骤. 方法一:选择使用高版本 1. 我 ...
- 不改文件名的情况下上传突破
方法不错,首先就是不强制改上传文件名.还有就是上传目录没有执行的权限. 然后用这方法貌似就可以上传到上级可写目录了. 比如抓这是抓的上传数据包: POST /upload/upfile.asp HTT ...
最新文章
- c# 字符串排序 (面试题)
- Java并发编程之——并发集合
- Android AlarmManager设置多个定时事件时只最后一个有效问题解决
- C++中的声明和定义
- python 文本处理操作
- SQL 2008完全卸载
- 基于SpringBoot的社团管理系统的设计与实现
- linux的木马检测
- MATLAB制作PPT(一):插入图片
- 关于常用传感器NPN和PNP类型的选择
- Akamai阿卡迈_abck逆向sensor_data(一)
- 计算机在平面设计中的作用,计算机在平面设计中应用2篇.docx
- python-scrapy爬虫框架爬取王者荣耀英雄皮肤图片和技能信息
- 闻与MyBatis之MyBatis快速指南
- ubuntu 18.04 安装NVIDIA 显卡驱动
- GB2312简体中文转换为拼音的一种方法
- 【ASP.net】--WebSite(网站) 和 WebApplication(Web应用程序)
- System Management Bus
- Java毕设项目电子病历系统计算机(附源码+系统+数据库+LW)
- matlab可以对多张表同时操作吗,update操作多张表