Advertisement

AcWing 1100: 抓住那头牛的题解(BFS)

阅读量:

AcWing 1100 抓住那头牛
广度优先搜索在求解最短路径问题中的巧妙应用,这一思路具有较高的参考价值
近几日因一些琐碎之事感到颇为烦闷,或许通过刷题能够带来些许愉悦,继续坚持下去…

复制代码
    #include<bits/stdc++.h>
    
    using namespace std;
    
    const int N = 2e5 + 10;
    
    int n, k;
    int dis[N];
    int q[N];
    
    int bfs(){
    	memset(dis, -1, sizeof dis);
    	q[0] = n;
    	dis[n] = 0;
    	int hh = 0, tt = 0;
    	
    	while(hh <= tt){
    		int t = q[hh ++ ];
    		if(t == k){
    			return dis[t];
    		}
    		if(t + 1 < N && dis[t + 1] == -1){
    			q[ ++ tt] = t + 1;
    			dis[t + 1] = dis[t] + 1

全部评论 (0)

还没有任何评论哟~