Problem Description
小莹莹被困在了一个由 n 个石柱围成一圈组成的迷宫里,也就是 1, 2, 3, … n, 1, 2, 3, …. 这样一直循环。

她起始位置是 1,每次只能沿着顺时针方向选择飞跃 a 或者 b 距离的魔法,也就是从当前石柱 i 飞往 i+a 石柱或者 i+b 石柱。
第 m 个石柱有传送门,她只有到达第 m 个石柱,才能从这个迷宫逃脱出去。
问你小莹莹能否能顺利的逃离迷宫,如果不能输出 “NO”.
如果能输出 “YES”,同时问你小莹莹最少需要使用几次魔法?

Input
第一行输入正整数 T 代表有 T 组测试数据。
对于每一组测试数据:
第一行输入由空格隔开的 n, m 代表石柱的数量和所需到达的石柱。
第二行输入由空格隔开的 a, b 代表两个魔法,一个可以飞跃 a 距离,一个可以飞跃 b 距离。
( 1 <= n <= 1e5, 0 <= a, b < n, 1 <= m <= n, T 组数据 n 的和 <= 5e6 )

Output
如果小莹莹顺利逃离迷宫:
第一行输出:”YES”
第二行输出:小莹莹最少使用魔法次数。
如果小莹莹无法逃离迷宫:
第一行输出:”NO”
答案不包含 “”。

Sample Input
3
8 6
2 3
4 3
4 3
4 4
2 2
Sample Output
YES
2
YES
2
NO

Hint
Source
Satw_zg

#include <bits/stdc++.h>
using namespace std;
int bfs(int a, int b, int c, int d, int e);
const int maxn = 100010;
int cnt[maxn];//每个点到初始位置要几步
bool vis[maxn];//标记该点有没有走过
int main()
{int t, n, m, a, b;scanf("%d", &t);while(t--){scanf("%d%d", &n, &m);//n个柱子,要求到达M;scanf("%d%d", &a, &b);//每次可以跳跃的距离int k = bfs(1, m, a, b, n);//n个柱子从一号开始每次跳跃a,或者B,要求到达mif(k == -1){printf("NO\n");}else{printf("YES\n%d\n", k);}}return 0;
}
int bfs(int a, int b, int c, int d, int e)
{memset(vis, 0, sizeof(vis));//先将标记数组初始化为0queue<int> q;//创建一个队列vis[a] = true;//将首位置标记为1cnt[a] = 0;//首位置到首位置的距离是0q.push(a);//将首号位置的坐标放进队列int s, k;while(!q.empty()){s = q.front();q.pop();if(s == b)//判断条件,如果跳跃到b点{return cnt[b];//返回cnt[b]的值;}k = (s + c)%e;//跳跃cif(k == 0)k = e;if(!vis[k]){q.push(k);vis[k] = true;cnt[k] = cnt[s] + 1;}k = (s + d)%e;//跳跃dif(k == 0)k = e;if(!vis[k]){q.push(k);vis[k] = true;cnt[k] = cnt[s] + 1;}}return -1;
}

魔法少女小莹莹——SDUT相关推荐

  1. 求数学系或计算机系姓张的学生的信息,西安财经学院信息学院实验报告实验四郑莹莹1005230303.pdf...

    西安财经学院信息学院实验报告实验四郑莹莹1005230303.pdf 西安财经学院 姓名 郑莹莹 西安财经学院 西西安安财财经经学学院院信息学院 1005230303 1005230303 学号 11 ...

  2. 21岁的北师大“才女”吴莹莹 真相

    21岁的北师大"才女"吴莹莹,不久前成为美国企业Topcoder的"亚洲区副总 裁".一轮新的造神运动又兴起了,这个还在上大三的女生,成了北师大和教育部力捧 的 ...

  3. 何必对吴莹莹如此苛刻 吴莹莹也是受害者

    在吴莹莹事件中,媒体再次担当了"成也萧何,败也萧何"的角色.很明显,这是一次炒作,但并非出自吴莹莹本身的炒作.就在第一天出现"21岁女副总裁"新闻的时候,我联系 ...

  4. 21岁的北师大才女吴莹莹

    我们今天请来的是21岁的北师大才女吴莹莹.虽然她的年龄不大,但她成就却非常不简单,不久前她还成为美国企业Topcoder的亚洲区副总裁. 12月8日,21岁的北师大大四女生,也是美国软件公司Topco ...

  5. 大学生总裁吴莹莹:我不是花瓶运营官

    大学生总裁吴莹莹:我不是花瓶运营官 美女,大学生,跨国公司亚洲区副总裁,年薪不低于50万,拥有近百项发明,舞林高手--履历如此丰富如此眩目,很难用一个词来概括这位在校大学生,一切似乎刚刚开始,一切却已 ...

  6. 转:学术腐败要从娃娃抓起——21岁外企美女副总吴莹莹真相

    转自:[url]http://forum.techweb.com.cn/viewthread.php?tid=46192[/url] 评:没想到呀,没想到--.其中有一个带钩子的勺子,我以前去面爱面吃 ...

  7. 【新闻】大四女生吴莹莹成跨国软件公司亚洲副总裁

    吴莹莹不仅是一个才女,更是一个美女.3项发明获国家专利.民间舞过九级.编程得国际大奖.被美国知名软件开发公司---Topcoder聘为亚洲副总裁--这一系列成绩都是由一位21岁的大四女生所取得的.昨天 ...

  8. 《欢乐颂》第二季来袭:程序员救美,邱莹莹终于找到靠谱男

    <欢乐颂>前不久刚迎来大结局,大家就马上开始期待第二季了.都市剧那么多,却独独火了它.也许这部剧成功之处就在于它真实,因为大部分人都能从剧中找到现在或是曾经的自己. 现实生活中,我们大多都 ...

  9. 高分辨率光学遥感影像舰船目标检测与识别算法研究(尹莹莹)

    论文阅读笔记 摘要 本文主要研究海陆背景下的光学遥感图像舰船目标检测与识别技术,重点研究了海陆分离.舰船目标疑似区域检测技术与疑似区域目标识别技术. 海陆分离: 采用了OTSU与形态学相结合的方法实现 ...

最新文章

  1. 除了负载均衡,Nginx 还可以做很多:限流、缓存、黑白名单等
  2. deepin系统引导_国产 Linux 发行版 深度操作系统 20 正式版发布
  3. 去除C++中string前面和后面的空白符
  4. TODO monkey笔记,PC端执行和手机端执行
  5. 【安全牛学习笔记】kali TOP10 安全工具:
  6. 开启php的文件上传扩展,linux中如何通过php.ini添加扩展?
  7. ckfinder php 配置,php – 在Laravel 5中为CKEditor设置路径以使用CKFinder
  8. vb.net html标签,VB.Net - 获取元素html的字符串/值?
  9. 安卓学习第10课——listview
  10. activiti 7中文文档_Python3.7中文官方文档来袭...
  11. java基础概念整理(三)
  12. win11如何退出磁贴桌面 Windows11退出磁贴桌面的设置方法
  13. RHEL/Centos7下使用EPEL和REMI源
  14. Django框架配置
  15. 跟进分析不一样的MTI商城
  16. 面试官问:淘宝七天自动确认收货,让你设计,可以怎么实现?
  17. APP离线后,通过SystemClock.elapsedRealtime()校正时间
  18. 计算机群等级,腾讯客服-群成员活跃等级规则
  19. 扫描中如何实现自动纠偏
  20. 恒定帧率30帧以上录制掉帧问题分析

热门文章

  1. AMEsim、simulink、CarSim三软件联合仿真
  2. PX4的CMake解析
  3. 【CSS 列表属性 (List)】
  4. flask下载excel文件
  5. pr如何跳到关键帧_如何把平淡无奇的视频变大片?试试电影感的开头字幕动画!...
  6. win 10 库 在哪
  7. Vue组件传值存在的弊端-Vuex状态管理
  8. PING(计算机网络)
  9. css实现摩天轮动画
  10. ps修改照片像素(大小)、分辨率。