一维跳棋(BFS)】的更多相关文章

一维跳棋是一种在1×(2N+1) 的棋盘上玩的游戏.一共有N个棋子,其中N 个是黑的,N 个是白的.游戏开始前,N 个白棋子被放在一头,N 个黑棋子被放在另一头,中间的格子空着. 在这个游戏里有两种移动方法是允许的:你可以把一个棋子移到与它相邻的空格:你可以把一个棋子跳过一个(仅一个)与它不同色的棋子到达空格. 对于N=3 的情况,棋盘状态依次为: WWW BBB WW WBBB WWBW BB WWBWB B WWB BWB W BWBWB WBWBWB BW WBWB BWBW WB BWB…
这是一维的BFS,而且没有什么变形,应该是最基础的BFS了吧 题意: 有这样一个奇葩的电梯,你在第i层的时候你只能选择上或者下Ki层,也就是你只能从第i层到达i+Ki或者i-Ki层.当然电梯最低只能在1层最高只能在n层. 给出起点和终点问最少需要多少次才能到达终点,如果不能到达输出-1 没有什么好解释的了,如此单纯的一道题,只要不是太粗心就能A过去 //#define LOCAL #include <iostream> #include <cstdio> #include <…
题意:给你n和k,问你n最少花费多少代价能得到k: 有两种变换:1.n++或者n--: 2.n=n*2: 两种代价每次的花费都是1: 思路:一维的bfs,每次入队三个点,一个是n+1,一个是n-1,一个是n*2的点: #include<iostream> #include<algorithm> #include<cstring> #include<queue> #define maxn 100020 using namespace std; ]; ]; in…
Flip Game Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 30669   Accepted: 13345 Description Flip game is played on a rectangular 4x4 field with two-sided pieces placed on each of its 16 squares. One side of each piece is white and the…
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2717 题解:一维简单BFS,详细看代码,0ms. #include<cstdio> #include<queue> using namespace std; ; bool v[maxn]; int n,k; struct nd{ int x,step; }; bool check(int x){ ||x>||v[x])return false; else return true;…
Catch That Cow Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 6383    Accepted Submission(s): 2034 Problem Description Farmer John has been informed of the location of a fugitive cow and wants…
hihocoder 1828 :https://hihocoder.com/problemset/problem/1828 学习参考:https://www.cnblogs.com/tobyw/p/9691431.html 题意: 给定一个图中,让你回答从S点跑到T点的最短时间.“.”点是可以直接走上去,耗时+1,“P”加速点,就是不耗时就可以走上去,“#”毒气点,必须要有氧气瓶才能进入,且耗时+2,“B”是氧气瓶补给点,每次进去可以得到一个氧气瓶,但是你最多可以携带5个氧气瓶,耗时+1. 思路…
题目链接:http://codeforces.com/gym/101755/problem/H 题目分析:先bfs一遍怪兽可以到达的点,再bfs人可以走的地方看可不可以到达终点: 很显然读到  2<=n*m<=200000 时,就不可以用二维数组存图了,不过据说因为数据比较水,可以用vector存图: vector存图AC代码: /* */ # include <iostream> # include <stdio.h> # include <string.h&g…
http://poj.org/problem?id=3278                                                                                  Catch That Cow Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 47010   Accepted: 14766 Description Farmer John has been infor…
在一个长度为 n 的坐标轴上,蒜头君想从 A 点 移动到 B 点.他的移动规则如下: 向前一步,坐标增加 1. 向后一步,坐标减少 1. 跳跃一步,使得坐标乘 2. 蒜头君不能移动到坐标小于 0 或大于 n 的位置.蒜头想知道从 A 点移动到 B 点的最少步数是多少,你能帮他计算出来么? 输入格式 第一行输入三个整数 n,A,B,分别代表坐标轴长度,起始点坐标,终点坐标.(50000≤A,B≤n≤5000) 输出格式 输出一个整数占一行,代表蒜头要走的最少步数. 样例输入 样例输出 #inclu…