BFS/acm習題集
A - Catch That Cow
// 沒有什麼坑~~
#include <iostream>
#include <string>
#include <string.h>
#include <algorithm>
#include <queue>
#define MAX 900100
#define INF 99999999
using namespace std;
struct node
{
int num,step;
node(int n,int s)
{
num = n;
step = s;
}
};
bool vis[MAX];
int main()
{
int N,K;
while(~scanf("%d%d",&N,&K))
{
int x,ans;
queue<node> q;
q.push(node(N,0));
memset(vis,false,sizeof(vis));
vis[N] = 1;
while(!q.empty())
{
node tmp = q.front();
q.pop();
x = tmp.num;
ans = tmp.step;
if(x == K)
{
break;
}
if(x>0 && vis[x-1]==0) //分三種情況
{
q.push(node(x-1,ans+1));
vis[x-1] = 1;
}
if(x<=K && vis[x+1]==0)
{
q.push(node(x+1,ans+1));
vis[x+1] = 1;
}
if(x<=K && vis[2*x]==0)
{
q.push(node(2*x,ans+1)); //記得開兩倍大小
vis[2*x] = 1;
}
}
cout<<ans<<endl;
}
return 0;
}
相關文章
- 習題集
- acm訓練題ACM
- CF習題集三
- CF習題集二
- POJ3984 迷宮問題【BFS】
- 【ybtoj】【BFS】【例題1】走迷宮
- 2019山東ACM省賽補題題解ACM
- bfs
- ACM演算法——數學專題ACM演算法
- 帶你學習BFS最小步數模型模型
- LeetCode BFS題目以及要注意的點LeetCode
- ACM學習筆記:二叉堆ACM筆記
- BFS(模板)
- 樹狀陣列模板+習題集陣列
- 資料 結構客觀題複習題集
- (BFS廣度優先演算法) 油田問題演算法
- ACM summaryACM
- ACM notesACM
- poj 3278 BFS
- 01BFS
- Count BFS Graph
- acm-排列組合學習筆記(更新中)ACM筆記
- 斜率優化(凸包優化)DP問題acm優化ACM
- 2017 ACM/ICPC Asia Regional Shenyang Online - 做題記錄ACM
- 牛客小白月賽100 ACM中的CM題ACM
- ACM金牌選手整理的【LeetCode刷題順序】ACMLeetCode
- 湖南大學2020屆ACM新生賽 部分題解ACM
- leetcode刷題記錄:演算法(六)BFS&DFSLeetCode演算法
- 藍橋杯練習系統題目集
- DAG bfs + dfs 126,
- 【BFS】poj 3414 Pots
- 深度DFS 和 廣度BFS搜尋演算法學習演算法
- 2020-10-30 ACM實踐報告部分程式題ACM
- DFS與BFS——理解簡單搜尋(中文虛擬碼+例題)
- 8.9 線段樹板子+三分補題+三維的bfs
- POJ3414 Pots【BFS】
- UVA11624 Fire!【BFS】
- BFS演算法原理演算法