当前位置: 首页 > news >正文

韩国网站源码下载网站买卖需要注意什么

韩国网站源码下载,网站买卖需要注意什么,七星彩网站建设,软件公司主要做哪些文章目录1. 问题描述2. 问题分析2.1 回溯法求解2.2 DP状态转移方程法2.3 DP状态转移表法1. 问题描述 找零问题#xff0c;在贪心算法讲过。但是贪心不一定能得出最优解。假设有几种不同币值的硬币v1#xff0c;v2#xff0c;.……vn#xff08;单位是元#xff09;。如果… 文章目录1. 问题描述2. 问题分析2.1 回溯法求解2.2 DP状态转移方程法2.3 DP状态转移表法1. 问题描述 找零问题在贪心算法讲过。但是贪心不一定能得出最优解。假设有几种不同币值的硬币v1v2.……vn单位是元。如果要支付w元求最少需要多少个硬币。比如有3种不同的硬币1元、3元、5元我们要支付9元最少需要3个硬币3个3元的硬币。 2. 问题分析 2.1 回溯法求解 /*** description: 找零钱需要张数最少回溯法* author: michael ming* date: 2019/7/20 22:50* modified by:*/ #include iostream #define N 3 int rmb[N] {1,9,10};//钞票面额 int amount[N]; int minAmount[N]; using namespace std; void exchange(const int targetMoney, int curMoney, int minPiece, int piece) {if(curMoney targetMoney)//超过目标返回return;if(curMoney targetMoney)//达到目标金额{if(piece minPiece){minPiece piece;//更新最小张数for(int i 0; i N; i)minAmount[i] amount[i];//获取每张钞票的张数}return;}for(int i 0; i N; i){//递归调用,拿取每张面额的钞票amount[i];exchange(targetMoney,curMoneyrmb[i],minPiece,piece1);amount[i]--;//恢复上次的状态} } int main() {int minPiece 65535, piece 0,targetMoney 18, curMoney 0;exchange(targetMoney,curMoney,minPiece,piece);cout 凑成 targetMoney 元最少需要 minPiece 张(枚)。 endl;int i 0;while(i N){if(minAmount[i] ! 0)cout minAmount[i] 个 rmb[i] ;i;}cout endl;cout ---------------------- endl; }2.2 DP状态转移方程法 由于上面的钞票面额可能不止3种递归树是多叉树所以状态转移表法画起回溯的递归图比较麻烦我们采用状态转移方程法。 状态转移方程如下 minPiece(targetMoney) 1 min{minPiece(targetMoney-rmb[0]), ... , minPiece(targetMoney-rmb[N-1])}targetMoney 18;//目标金额 rmb[N] {1,9,10};//钞票面额 对于题目的情况代入具体数值状态转移方程如下 minPiece(18) 1 min{minPiece(18-1), minPiece(18-9) , minPiece(18-10)} 1 min{minPiece(17),minPiece(9),minPiece(8)}DP递归备忘录代码如下 /*** description: 找零钱需要张数最少* author: michael ming* date: 2019/7/20 18:35* modified by: */ #include iostream #include algorithm #include memory.h#define N 3 const int targetMoney 18;//目标金额 int rmb[N] {1,9,10};//钞票面额 int mem[targetMoney1];//备忘录存放最小张数 using namespace std; int minP(int Money) {if(Money 0)//超过目标返回很大的张数表示不可能凑成return 65535;if(Money 0)//达到目标金额return 0;if(mem[Money] 0)//计算过了直接读取备忘录return mem[Money];int minAmount[N];memset(minAmount,65535,N*sizeof(int));for(int i 0; i N; i){//递归调用,拿取每张面额的钞票minAmount[i] minP(Money-rmb[i]);}sort(minAmount,minAmountN);mem[Money] minAmount[0]1;//记录最小的张数return mem[Money]; } int main() {cout 凑成 targetMoney 元最少需要 minP(targetMoney) 张(枚)。 endl;//如何打印出选取钞票的面额和张数 }2.3 DP状态转移表法 /*** description: 找零钱需要张数最少,dp状态表法* author: michael ming* date: 2019/7/21 20:01* modified by: */ #include iostream #include algorithm #include memory.h#define N 3 const int targetMoney 18;//目标金额 int rmb[N] {1,9,10};//钞票面额,从小到大 using namespace std; void exchange(int Money) {int maxPiece targetMoney/rmb[0];//最大张数int i, j, k;int (*states)[targetMoney1] new int [maxPiece][targetMoney1];//memset(states,65535,maxPiece*(targetMoney1)*sizeof(int));//上面错误memset一般只付0或极大值for(i 0; i maxPiece; i)for(j 0; j targetMoney; j)states[i][j] 65535;//初始化for(k 0, j 0; j targetMoney; j){if(k N j rmb[k]){//初始化第一行数据states[0][j] 1;//一张rmbk;}}for(i 1; i maxPiece; i)//动态规划{for(j 0; j targetMoney; j)//上面一行的数据考下来states[i][j] states[i-1][j];for(j 0; j targetMoney; j){if(states[i-1][j] ! 65535){for(k 0; k N; k){if(jrmb[k] targetMoney states[i-1][jrmb[k]] states[i-1][j]1)states[i][jrmb[k]] states[i-1][j]1;}}}}cout 凑成 targetMoney 元最少需要 states[maxPiece-1][targetMoney] 张(枚)。 endl;//------------打印选择的信息---------------------------for(i maxPiece-1; i 1 states[i][targetMoney] states[i-1][targetMoney]; --i);//此时i等于最早出现的答案处的行for(j targetMoney; j 0; ){if(i ! 0){for(k 0; k N; k){if(states[i-1][j-rmb[k]] states[i][j]-1){cout 1张 rmb[k] ;j j-rmb[k];i--;break;}}}else{cout 1张 j ;break;}}delete [] states;//释放资源 } int main() {exchange(targetMoney);return 0; }
http://www.huolong8.cn/news/68806/

相关文章:

  • 帮人做网站网站目录 index.html
  • 网站开发容易找工作吗一个互联网公司可以做几个网站
  • 大型网站建设开发设计公司seow是什么意思
  • 去后台更新一下网站上海自贸区公司注册
  • 建网站首页图片哪里找主题 wordpress
  • 广州建站代运营公司有哪些游戏推广赚佣金的平台
  • 什么网站可以做期刊封面昆明网站建设首选互维
  • 海南网站设计谷歌google 官网下载
  • 无法打开建行网站大学科技园网站建设
  • 手机网站打不开被拦截怎么办长沙企业宣传片制作公司
  • 全球网站建设品牌软文发布平台乐云seo
  • wordpress栏目置顶如何进行营销型企业网站的优化
  • 国内做网站最好的公司新浪微博登录网页版
  • ios移动网站开发工具营销型网站有哪些
  • 自己做的网址危险网站如何加强精神文明网站建设内容
  • 没有网站如何做adsense佛山市网站建设
  • 荆门市住房和城乡建设局网站wordpress.org教程
  • 龙泉驿网站建设小区网络设计方案
  • 大石桥网站制作百度下载正版
  • 网站建设保障方案深圳网页制作
  • 网站建设与制作视频教学php建设网站后台
  • 成都模板网站建设浙江自己如何做网站
  • 青岛网站开发公司电话网站建设找什么工作室
  • 做电商网站搭建就业岗位免费引流推广工具
  • 自己做网站要不要租服务器dw做网站怎么上线
  • 湘潭做网站 z磐石网络专业开发小程序的公司
  • 专业的移动网站建设wordpress 可视化编辑
  • 西安网站排名推广wordpress的安装
  • 上网站 ftp服装销售 网站建设论文
  • 亚洲杯篮球直播在什么网站甲流其实就是新冠