非常可乐

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 7990    Accepted Submission(s): 3190

Problem Description
大家一定觉的运动以后喝可乐是一件很惬意的事情,但是seeyou却不这么认为。因为每次当seeyou买了可乐以后,阿牛就要求和seeyou一起分享这一瓶可乐,而且一定要喝的和seeyou一样多。但seeyou的手中只有两个杯子,它们的容量分别是N 毫升和M 毫升 可乐的体积为S (S<101)毫升 (正好装满一瓶) ,它们三个之间可以相互倒可乐 (都是没有刻度的,且 S==N+M,101>S>0,N>0,M>0) 。聪明的ACMER你们说他们能平分吗?如果能请输出倒可乐的最少的次数,如果不能输出"NO"。
Input
三个整数 : S 可乐的体积 , N 和 M是两个杯子的容量,以"0 0 0"结束。
Output
如果能平分的话请输出最少要倒的次数,否则输出"NO"。
Sample Input
7 4 3 4 1 3 0 0 0
Sample Output
NO 3
Author
seeyou
#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<queue>
using namespace std;
int vis[110][110],a[4];
struct node
{int v[4],step;
};
int jud(int x,int y,int z,int w)
{if(x==w&&y==w)return 1;if(x==w&&z==w)return 1;if(y==w&&z==w)return 1;return 0;
}
void bfs()
{int w=a[0]/2;node now,next;memset(vis,0,sizeof(vis));queue<node>q;now.v[0]=a[0];now.v[1]=now.v[2]=now.step=0;vis[a[0]][0]=1;q.push(now);while(!q.empty()){now=q.front();q.pop();for(int i=0;i<3;i++){for(int j=0;j<3;j++){if(i!=j){next=now;if(now.v[i]+now.v[j]>a[j]){next.v[i]=now.v[i]+now.v[j]-a[j];next.v[j]=a[j];next.step=now.step+1;}else{next.v[i]=0;next.v[j]=now.v[i]+now.v[j];next.step=now.step+1;}if(jud(next.v[0],next.v[1],next.v[2],w)){printf("%d\n",next.step);return ;}if(!vis[next.v[0]][next.v[1]]){q.push(next);vis[next.v[0]][next.v[1]]=1;}}}}}printf("NO\n");
}
int main()
{int s,n,m;while((scanf("%d%d%d",&s,&n,&m),s||n||m)){a[0]=s,a[1]=n,a[2]=m;if(s%2){printf("NO\n");continue;}bfs();}
}

转载于:https://www.cnblogs.com/playboy307/p/5273758.html

hdoj--1495--非常可乐(搜索+隐式图)相关推荐

  1. 题目2:隐式图的搜索问题(A*算法解决八数码)

    数据结构课程实践系列 题目1:学生成绩档案管理系统(实验准备) 题目2:隐式图的搜索问题(A*算法解决八数码) 题目3:文本文件单词的检索与计数(实验准备) 文章目录 数据结构课程实践系列 题目1:学 ...

  2. 《数据结构课程实践》_02_隐式图的搜索问题_准备工作

    02_隐式图的搜索问题_准备工作 一.实验题目与要求 二.编程语言以及开发环境 三.实验思路 A*算法 四.预习小结 一.实验题目与要求 实验要求: 对九宫重排问题,建立图的启发式搜索求解方法: 用A ...

  3. 《数据结构课程实践》_02_隐式图的搜索问题_实现

    02_隐式图的搜索问题_实现 一.实验题目 二.编程语言以及开发环境 三.源代码 1.main类 2.节点类 3.算法类 四.运行结果 五.实验小结 一.实验题目 实验要求: 对九宫重排问题,建立图的 ...

  4. 隐式图的搜索问题(九宫重排)——实验准备

    隐式图的搜索问题(九宫重排)--实验准备 隐式图的搜索问题(九宫重排) 实验任务 实验要求 A*算法 隐式图的搜索问题(九宫重排) 实验任务 对九宫重排问题,建立图的启发式搜索求解方法. 用A*算法求 ...

  5. 隐式图的搜索问题(九宫重排)——项目实现

    隐式图的搜索问题(九宫重排)--项目实现 隐式图的搜索问题(九宫重排)--项目实现 源代码 运行结果 隐式图的搜索问题(九宫重排)--项目实现 源代码 package SearchPath;publi ...

  6. 2.隐式图的搜索问题

    题目2:隐式图的搜索问题 实验内容 对九宫重排问题,建立图的启发式搜索求解方法: 用A*算法求解九宫重排问题. 实验要求 3х3九宫棋盘,放置数码为1~8的8个棋子,棋盘中留有一个空格,空格周围的棋子 ...

  7. 题目2:隐式图的搜索问题(实验准备)

    题目2:隐式图的搜索问题(实验准备) 实验内容 实验要求 编程语言的选择 项目思路 项目解析 算法选择 A*算法 实验内容 对九宫重排问题,建立图的启发式搜索求解方法: 用A*算法求解九宫重排问题. ...

  8. 实践项目—隐式图的搜索(预习报告)

    文章目录 实验内容 实验要求 编程语言及开发环境 实验思路 一.A*算法 二.A*算法解决九宫格问题 实验内容 1.对九宫重排问题,建立图的启发式搜索求解方法. 2.用A*算法求救九宫重排问题. 实验 ...

  9. 题目2:隐式图的搜索问题(A*算法解决八数码)代码实现

    从起点 开始,把它加入到一个由方格组成的open list(开放列表) 中,这个open list像是一个购物清单.Open list里的格子是可能会是沿途经过的,也有可能不经过.因此可以将其看成一个 ...

最新文章

  1. Discuz! 7.2以下版本及各uc产品api接口Get webshell漏洞
  2. PHP操作FTP类 (上传下载移动创建等)
  3. 团队项目电梯会议视频
  4. H3C 以太网集线器
  5. OEA中的缓存模块设计
  6. C#多线程池演示例程--下载图片
  7. 16.凤凰架构:构建可靠的大型分布式系统 --- 向微服务迈进
  8. 常见笔顺错误的字_易错汉字笔画顺序 你全都会吗?
  9. [SUCTF 2019]EasyWeb---无参数RCE
  10. 图像超分辨率重建原理学习
  11. iPhone14pro紫色“掉漆”/ 苹果英伟达拒绝台积电涨价/ DALL·E取消排队...今日更多新鲜事在此...
  12. java程序员面试自我介绍
  13. IntelliJ IDEA 14注册码
  14. 组建局域网共享上网全过程
  15. Linux下目录的作用
  16. Gromacs分子动力学模拟流程概述
  17. java mht 转html_【JAVA】mht文件转html
  18. 工作汇报怎么写?学会这几招,教你快速升职加薪!
  19. 老巫婆的编程世界内容积累
  20. 7发布年份_众多洋酒大牌相继发布新品 | 全球烈酒新品一周速览

热门文章

  1. 世界知名洋酒种类及酒具的使用
  2. 某政府门户网站维护项目运维方案
  3. 利用计算机进行文字处理就是进行文字的录入,计算机文字录入处理员理论题库.DOC...
  4. 下载c语言软件后怎么解压,手机怎么解压文件 盘点常用手机压缩打包解压文件应用...
  5. linux之if语句详解
  6. 【一步教学,一步到位】拼多多社招三面多久给结果
  7. 科学革命——承认自己无知的革命
  8. 将SSH密匙添加到云效并下载代码
  9. 微信小程序生成海报中二维码-----长按识别不了问题及处理方案
  10. 美通企业日报 | 麦德龙在重庆开第4家店;假日品牌在华第100家酒店开业