欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

加勒比海盗船——最优装载问题(趣学算法C++代码和python代码)

时间:2023-08-21
C++代码:

#include#include#includeconst int N=1000005;using namespace std;double w[N];//古董的重量数组int main(){double c;//载重量cint n;//古董个数ncout<<"请输入载重量c及古董个数n:"<>c>>n;cout<<"请输入每个古董的重量,用空格分开"<>w[i];}sort(w,w+n);//按古董重量升序排序cout<<"排序后结果"<

python代码:

print("请输入载重量c及古董个数n:")c=float(input())n=int(input())weight=[]print("请输入每个古董的重量:")for i in range(n): a=float(input("该古董重量:")) weight.append(a)for i in range(n): print(weight[i])weight.sort()print("古董重量升序排序后的结果:")for i in range(n): print(weight[i])ans=0#已装入的古董个数tmp=0.0#已装入的古董重量for i in range(n): tmp += weight[i] if tmp<=c: ans=ans+1 else:breaktmp=tmp-weight[-1]print("根据贪心策略能装入古董最大数量为ans=",ans)print("根据贪心策略能装入古董最大重量为tmp=",tmp)

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。