zoukankan      html  css  js  c++  java
  • hdu--1181--变形课

    思路:
    并查集的题,用dfs做的,深搜首字母
    注意数据结构,保存字符串的首尾字母即可,最初保存整个字符串,结果memory limit
    
    #include<iostream>
    #include<queue>
    #include<vector>
    #include<cstring>
    using namespace std;
    struct st{
        char f,e;
    }arr[10000];
    bool mar[10000]={0};
    void dfs(char);
    int mark = 0;
    int main()
    {
        string str;
        while(cin>>str){
            mark = 0;
            memset(arr,0,sizeof(arr));
            memset(mar,0,sizeof(mar));
            if(str == "0")continue;
            else if(str.begin() != str.end()){
                arr[0].f=str[0];
                arr[0].e=str[str.size()-1];
            }
            int ma = 0,i = 0;
            while(cin>>str){
                ++i;
                if(str == "0"){
                    ma = 1;break;
                }
                else if(str.begin() != str.end()){
                    arr[i].f=str[0];
                    arr[i].e=str[str.size()-1];
                }
            }
            dfs('b');
            if(mark)cout<<"Yes.
    ";
            else cout<<"No.
    ";
            if(ma == 1)continue;
        }
        return 0;
    }
    void dfs(char ch){
        if( ch== 'm'){
            mark = 1;return ;
        }
        int i=0;
        for(st s:arr){
            if(s.f == ch && mar[i] == 0){
                mar[i] = 1;
                dfs(s.e);
                if(mark)return ;
                mar[i] = 0;
            }
            i++;
        }
    }
  • 相关阅读:
    vue中点击输入框弹出事件
    shiro
    Java转Kotlin
    RxJava2详细攻略(四)
    RxJava2详细攻略(三)
    RxJava2详细攻略(二)
    RxJava2详细攻略(一)
    DataBinding使用介绍
    类集框架
    使用CrashHandler获取应用crash信息
  • 原文地址:https://www.cnblogs.com/slothrbk/p/7251900.html
Copyright © 2011-2022 走看看