HDU 1548 A strange lift
来源:互联网 发布:软件专利说明书范文 编辑:程序博客网 时间:2024/06/16 23:50
//搜索注意已搜索标记,第一次忘了判断,wa了// 第二次判断写错, #include<stdio.h>#include <string.h>#include <queue>using namespace std;struct node{int pos;int step;node(int _pos, int _step):pos (_pos) ,step(_step) {}};const int maxn = 1e3 + 5;int vis[maxn]; // int k[maxn];int main(){int n, a, b, ans = 0;while (scanf("%d", &n) != EOF && n != 0){scanf("%d%d",&a, &b);for (int i = 1; i <= n; i++){scanf("%d", &k[i]);}memset(vis,0,sizeof(vis));queue <node> que;que.push(node(a,0));ans = 0;while (!que.empty() ){node tem = que.front() ;if (tem.pos == b) break;vis[tem.pos ] = 1;que.pop() ;if (tem.pos + k[tem.pos ] <= n && vis[tem.pos + k[tem.pos ]] == 0) {que.push(node(tem.pos + k[tem.pos ], tem.step + 1)) ;}if (tem.pos - k[tem.pos ] >= 1 && vis[tem.pos - k[tem.pos ]] == 0){que.push(node(tem.pos - k[tem.pos ], tem.step + 1));}}if (!que.empty() ){printf("%d\n", que.front() .step);} else printf("-1\n");}}
阅读全文
0 0
- A strange lift hdu 1548
- HDU 1548 A strange lift
- HDU 1548 A strange lift
- HDU 1548 A strange lift
- Hdu-1548 A strange lift
- HDU 1548 A strange lift
- HDU-1548-A strange lift
- hdu 1548 A strange lift
- HDU 1548-A strange lift
- HDU 1548 A strange lift
- hdu 1548 A strange lift
- hdu 1548 A strange lift
- HDU 1548 A strange lift
- hdu 1548 a strange lift
- HDU 1548 A strange lift
- HDU 1548 A strange lift
- hdu 1548 A strange lift
- hdu 1548 A strange lift
- 计算几何学入门知识
- npm init
- CentOS完整版软件安装
- 【数论】奇奇怪怪的结论
- greenplum gp 数据库锁 查看所有sql
- HDU 1548 A strange lift
- 系统知识汇总
- 修改 maven项目 默认java版本
- C#使用双缓冲解决绘图闪屏的问题
- NOI2017 游记
- 初识京东云
- java查询
- ACache-缓存-一个轻量级框架
- rem适配方案