zoukankan      html  css  js  c++  java
  • UVA 10391 STL容器的使用

    这道题目,我是用了2个set(s1,s2)容器,s1用来盛放所有的字符串,然后遍历s1,把每个字符串拆成2部分,再判断s1里是否均含有这2部分,如果有就加入到s2容器里,因为它要求按照字典序输出,set又具有排序功能。

    代码如下:

    #include <iostream>
    #include<stdio.h>
    #include<stdlib.h>
    #include<string>
    #include<set>
    #include<string.h>
    #define maxn 120000+10
    using namespace std;
    string s[maxn];
    int main()
    {
        int num=0;
        set<string> s1;
        set<string> s2;
        while(cin>>s[num]){
            s1.insert(s[num]);
            num++;
        }
        set<string>::iterator it;
        string x,y;
        for(it=s1.begin();it!=s1.end();it++){
            string ss=*it;
            int len=ss.length();
            for(int i=1;i<len;i++){
                x=ss.substr(0,i);
                y=ss.substr(i,len-i);
               if(s1.count(x)&&s1.count(y)){
                s2.insert(ss);
               }
            }
        }
        for(it=s2.begin();it!=s2.end();it++){
            cout<<*it<<endl;
        }
    
       return 0;
    }
  • 相关阅读:
    Java学习日报8..4
    Java学习日报8.3
    Java学习日报8.2
    Java学习日报7.31
    Java学习日报7.30
    Java学习日报7.29
    [标签] Java学习日报7.28
    Java学习日报7.27
    停更
    MG51--day5 I AM BACK/流水灯/数码管动态显示
  • 原文地址:https://www.cnblogs.com/wintersong/p/5065940.html
Copyright © 2011-2022 走看看