• 深搜_简单的深搜(HDU_1181)


    选定 'b' 开头的单词,深搜到底,如遇 'm' 结尾,返回。

    #include <stdio.h>
    #include <string.h>
    
    #define M 1002
    char map[M][M];
    int flag[M],tot,re_flag;
    
    void dfs(int i)
    {
        char endCH = map[i][(int)strlen(map[i]) - 1];
        if(endCH == 'm')
        {
            re_flag = 1;
            return ;
        }
        for(int j=0; j<tot; j++)
        {
            if(!flag[j] && endCH == map[j][0])
            {
                flag[j] = 1;
                dfs(j);
                flag[j] = 0;
            }
        }
    }
    
    void run()
    {
        memset(flag,0,sizeof(flag));
        re_flag = 0;
        for(int i=0; i<tot; i++)
        {
            if(map[i][0] == 'b')
            {
                flag[i] = 1;
                dfs(i);
                flag[i] = 0;
            }
        }
    }
    
    int main(int argc, char* argv[])
    {
        #ifdef __MYLOCAL
        freopen("in.txt","r",stdin);
        #endif
    
        tot = 0;
        while(scanf("%s",map[tot++]) != EOF)
        {
            if(map[tot-1][0] == '0')
            {
                run();
                printf("%s
    ",re_flag ? "Yes." : "No.");
                tot = 0;
            }
        }
    
        return 0;
    }
  • 相关阅读:
    MyBatis+Oracle+Sequence
    原来这就是JVM垃圾
    JVM内存布局
    CacheAsidePattern结论
    The LMAX Architecture
    网络编程
    随机存取文件流
    数据流
    打印流
    标准输入流、标准输出流
  • 原文地址:https://www.cnblogs.com/lk1993/p/3262591.html
Copyright © 2020-2023  润新知