HDU-1247 Hat’s Words (STL:map)

来源:互联网 发布:ps软件cs5官方下载 编辑:程序博客网 时间:2024/06/11 08:09

题目链接: Hat’s Words

题意: 要求找到字典中两个单词组合起来的单词, 且输出要求按照原来字典的顺序

思路: map 的使用

        #

string s1(s[i],0,j);  //从0开始的将s[i]的j个字符附给s1
CODE:

#include <iostream>#include<stdio.h>#include<algorithm>#include<string>#include<stack>#include<set>#include<queue>#include<map>#include<vector>using namespace std;string s[50005];int main(){    //freopen("in.in","r",stdin);    map<string,int> ma;    int n=0;    while(cin>>s[n])    {        ma[s[n++]]=1;    }    for(int i=0;i<n;i++)    {        for(int j=1;j<s[i].size()-1;j++)        {            string s1(s[i],0,j);  //从0开始的将s[i]的j个字符附给s1            string s2(s[i],j,s[i].size()-j);            if(ma[s1]==1 && ma[s2]==1)            {                cout<<s[i]<<endl;                break;            }        }    }    return 0;}


0 0
原创粉丝点击