日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第2课 桐桐的运输方案《聪明人的游戏 信息学探秘.提高篇》

發布時間:2025/3/15 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第2课 桐桐的运输方案《聪明人的游戏 信息学探秘.提高篇》 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
/* 第2課 桐桐的運輸方案(transp)-2020-02-232019 CSP-J/S第一輪各省分數線統計與分析(含浙江省) http://www.jzb.com/bbs/thread-7553499-1-1.htmlCSP-J/S2019第二輪入門級一等各省評級分數線 http://www.zizzs.com/c/201912/41117.htmlCSP-J/S2019第二輪提高級一等各省評級分數線 http://www.zizzs.com/c/201912/41116.html */ #include <bits/stdc++.h> using namespace std;int n; bool used[30],best[30]; double ans,x,w[30],v[30],f[30];//search(1,0,0); void search(int k,double weight,double m) {//剪枝1 超重 if( weight > x ) return;//剪枝2 if( m>ans ){ans=m;//更新哪個物品選擇了 for(int i=1;i<=n;++i){best[i]=used[i];}}//碰到南墻就回頭 if( k>n ) return;//剪枝3//2.要求所運送貨物的總價值最大。//在第k步時,如果把后面剩下的所有物品都選擇所得到的總價值都不比當前保存的最大價值大,//則不再搜索。if( m+f[k]<ans) return; /* 20 n=6 weight[i] 6 2 8 15 3 2 v[i] 5 8 10 2 1 1 f[i] 27 22 14 4 2 1 */ //選擇物品K used[k]=true;search(k+1,weight+w[k],m+v[k]);//不選擇物品K used[k]=false;search(k+1,weight,m); } int main( void ) {//第1行是一個實數,表示貨車的最大載貨量x (1<x≤100)。//第2行是一個正整數,表示待運送的貨物數n (1<n≤20)。cin>>x>>n;//后面n行每行兩個用空格隔開的實數,//分別表示第1至第n件貨物的質量W(weight)和價值V(value)。for(int i=1;i<=n;++i){cin>>w[i]>>v[i];}//o(n) 后綴數組 for(int i=n;i>=1;--i){f[i]=f[i+1]+v[i];}ans=0;search(1,0,0);//第1行為被運送貨物的總價值(只輸出整數部分);cout<<(int)floor(ans)<<endl;//第2行為按編號大小順序輸出所有被運送貨物的編號//(當一件都不能運送時,不輸出)。for(int i=1;i<=n;++i){if( best[i] ){cout<<i<<" ";}}cout<<endl;return 0; } /* 20 4 3.5 4 4 5 5 6.8 6.9 7作業: 1.小學奧數_7647余數相同問題 http://noi.openjudge.cn/math/7647/2、4.7算法之搜索 http://noi.openjudge.cn/ch0407/3、2.5基本算法之搜索 http://noi.openjudge.cn/ch0205/ */

總結

以上是生活随笔為你收集整理的第2课 桐桐的运输方案《聪明人的游戏 信息学探秘.提高篇》的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。