P1628 合并序列

题目描述

有N个单词和字符串T,按字典序输出以字符串T为前缀的所有单词。

输入输出格式

输入格式:

 

输入文件第一行包含一个正整数N;

接下来N行,每行一个单词,长度不超过100;

最后一行包含字符串T。

【数据规模】

对于60%的数据,满足1≤N≤1000;

对于100%的数据,满足1≤N≤100000且所有字符均为小写字母;

 

输出格式:

 

按字典序升序输出答案。

输入输出样例

输入样例#1: 复制
6
na
no
ki
ki
ka
ku
k
输出样例#1: 复制
ka
ki
ki
ku

 

看了代码之后你会发现非常的简单,

关键是要想到用c++自带函数find,

然后注意用这个必须是string类型,

然后字符串也可以直接用快排,

不用担心别的什么。

代码:

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cmath>
 4 #include<algorithm>
 5 #include<cstring>
 6 using namespace std;
 7 
 8 int n;
 9 string a[100002],x;
10 
11 int main()
12 {
13     scanf("%d",&n);
14     for(int i=1;i<=n;++i)
15         cin>>a[i];
16     cin>>x;
17     sort(a+1,a+n+1);
18     for(int i=1;i<=n;++i)
19         if(a[i].find(x)==0)
20             cout<<a[i]<<endl;
21     return 0;
22 }

如果你不开心,那我就把右边这个帅傻子分享给你吧,
你看,他这么好看,跟个zz一样看着你,你还伤心吗?
真的!这照片盯上他五秒钟就想笑了。
一切都会过去的。
时间时间会给你答案2333
 
原文地址:https://www.cnblogs.com/Mary-Sue/p/9415686.html