您当前的位置: 首页 > 

钟钟终

暂无认证

  • 4浏览

    0关注

    233博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

一道特别好的深搜题+bfs

钟钟终 发布时间:2022-02-25 23:37:37 ,浏览量:4

P2921 [USACO08DEC]Trick or Treat on the Farm G

深搜的技巧全用到了,写这个题解的人深搜也太好了吧 https://www.luogu.com.cn/problem/P2921

(改天加注释复习)

#include 

using namespace std;
const int maxn=1e6+5;
const int inf=0x3f3f3f3f;
int nxt[maxn],n,cnt,f[maxn],h[maxn],fg;
bool vis[maxn];

int dfs(int u,int k)
{
    if(h[u])
        return h[u]-1+k;
    if(vis[u])
    {
        h[u]=k-f[u];
        fg=u;
        return k-1;
    }
    vis[u]=1;
    f[u]=k;
    int ans=dfs(nxt[u],k+1);
    if(fg)
    {
        if(u==fg)
            fg=0;
        else
            h[u]=h[fg];
    }
    else
        h[u]=h[nxt[u]]+1;
    vis[u]=0;
    return ans;
}

int main()
{
    scanf("%d",&n);
    for(int i=1;i            
关注
打赏
1664378814
查看更多评论
0.1449s