码迷,mamicode.com
首页 > 其他好文 > 详细

1032 Sharing (25分)

时间:2020-02-28 15:49:40      阅读:43      评论:0      收藏:0      [点我收藏+]

标签:algo   png   技术   cstring   print   turn   题目   har   定义   

1032 Sharing (25分)

题目

技术图片

思路

定义map存储所有的<地址1,地址2>
第一set存放单词1的所有地址(通过查找map)
通过单词二的首地址,结合map,然后在set中查找是否存在,如果存在就是所求的地址,没有就是-1

注意点

代码

#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<vector>
#include<set>
#include<string>
#include<map>
#include<queue>
#include<stack>
#include<iostream>
using namespace std;

int main() {
    int n;
    string a, b;
    cin>>a>>b>>n;
    map<string, string> common;
    set<string> c1;
    for(int i=0;i<n;i++){
        string s1, s2;
        char ch;
        cin>>s1>>ch>>s2;
        common[s1] = s2;
    }
    string _a = a;
    c1.insert(_a);
    while((_a = common[_a]) != "-1"){
        c1.insert(_a);
    }
    c1.insert(_a);
    
    string _b = b;
    if(c1.find(_b) != c1.end()){
        printf("%s", _b.c_str());
        return 0;
    }
    while((_b = common[_b]) != "-1"){
        if(c1.find(_b) != c1.end()){
            printf("%s", _b.c_str());
            return 0;
        }
    }
    printf("-1");
}

1032 Sharing (25分)

标签:algo   png   技术   cstring   print   turn   题目   har   定义   

原文地址:https://www.cnblogs.com/d-i-p/p/12377175.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!