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

社交网站 备案百度代理推广

社交网站 备案,百度代理推广,安徽元鼎建设工程网站,代理网站推荐韩信走马分油c 题目算法代码 题目 把油桶里还剩下的10斤油平分,只有一个能装3斤的油葫芦和一个能装7斤的瓦罐。如何分。 算法 油壶编号0,1,2。不同倒法有:把油从0倒进0(本壶到本壶,无效)&…

韩信走马分油c++

  • 题目
  • 算法
  • 代码

题目

  • 把油桶里还剩下的10斤油平分,只有一个能装3斤的油葫芦和一个能装7斤的瓦罐。如何分。

算法

  1. 油壶编号0,1,2。不同倒法有:把油从0倒进0(本壶到本壶,无效),从0倒进1,从0倒进2;从1倒进0,从1倒进1(无效),从1倒进2;从2倒进0,从2倒进1,从2倒进2(无效)。此过程可用二个for循环来摸拟,见下图。
  2. 为方便计算,以这种倒法为一次大循环,然后再不停地重复倒油。每次倒油,3个壶中的油量:10,0,0(举个例)是确定值,存入向量vector中。
  3. 每种结果,再重复1中的9种倒法,又会产生更多的油量结果vector[0]、vector[1]、vector[2]。结果产生更多的结果……
  4. 符合广度优先算法。用双端队列存储每一种结果,把初始值(10,0,0)入队。取出进行处理(相互之间倒油,有9种可能),将结果入队。再出队,处理,再入队,直到队列为空。
  5. 倒油的结果(10,0,0),其种类是有限的,不同的倒油方法会产生重复结果现象,用map来去重。而且map还可以记录油的变化过程,即map[vector0]=vector0是初始,以后产生一个新结果作为键,值为上一次的状态。
    在这里插入图片描述

代码

#include<iostream>
#include<vector>
#include<map>
#include<deque>
using namespace std;
//判断油壶的状态是否符合结果,即有没有出现5l油量的壶 
bool ok(vector<int>& v,int goal){for(int n:v){if(n==goal) return true;}return false;
}
//广度优先算法 
bool f(int* a,vector<int> v,int goal){deque<vector<int> > q;//双端队列 q.push_back(v);//初始值入队 map<vector<int>,vector<int> >  m;m[v]=v;while(1){int n=q.size();if(n==0) return false;for(int i=0;i<n;i++){vector<int> t=q.front();if(ok(t,goal)){while(m[t]!=t){cout<< t[0] <<"-"<< t[1]<< "-"<<t[2]<<endl;t=m[t];}return true;} q.pop_front();//倒油,从i壶倒进j壶 for(int i=0;i<3;++i)for(int j=0;j<3;++j){if(i==j) continue;if(t[i]==0) continue;if(t[j]==a[j]) continue;vector<int> t1=t;t1[j]+= t1[i];t1[i]=0;if(t1[j]>a[j]){//接收的油超过其容量 t1[i]=t1[j]-a[j];t1[j]=a[j];}if(m.count(t1)) continue;m[t1]=t;q.push_back(t1);} }}
}
int main(){int a[]={10,7,3};vector<int> v={10,0,0};f(a,v,5);return 0;
}
http://www.jinmujx.cn/news/113235.html

相关文章:

  • 河北做网站的公司免费seo软件
  • 网站怎么做速排广州网站设计实力乐云seo
  • 网站优化的意义网站推广的基本手段有哪些
  • 建筑工程网上报建网站诚信手册郑州百度推广代理公司
  • 服装网站公司网站深圳seo推广外包
  • wordpress首页地址怎么修改上海优化seo
  • 游戏网站cms站长之家站长工具
  • flash网站制作下载搜索网站有哪些
  • asp网站安全如何做关键词排名监控
  • 微网站怎么免费做百度识图搜索图片来源
  • 做ppt的模板的网站有哪些内容网络营销推广策划方案
  • 做域名后就得做网站吗东莞seo建站投放
  • 济源市网站建设seo优化行业
  • gis网站开发教程旅游网站的网页设计
  • 南通做阿里巴巴网站的单位抖音搜索seo排名优化
  • 鹏翔科技 网站建设淘宝营销推广方案
  • 福建省建设职业管理中心网站百度智能建站系统
  • 在线医疗网站建设线上营销渠道
  • 如何免费发布个人网站站长工具排名查询
  • 基层档案网站建设广告推广免费发布
  • 苏州网站建设哪家好电子商务网站建设与维护
  • 公司接到网站中文域名到期厦门关键词seo排名网站
  • 网站被同行抄袭怎么办aso优化前景
  • 南宁网站建设哪家市场营销培训课程
  • 无锡电子商务网站建设长春百度seo公司
  • 香港网站建立网站平台需要多少钱
  • 网站建设div可拖拽布局网站优化教程
  • 网站的特征包括哪些seo关键词排名点击工具
  • 网站建设费做什么全网营销推广是什么
  • 做网站的工作室泰州seo公司