题目描述
有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
#include <iostream>
#include <algorithm>
using namespace std;
int n;
string k,a[1000005];
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
cin>>k;
sort(a+1,a+n+1);//将所有的单词都按字典序排序
for(int i=1;i<=n;i++)
if(a[i].find(k)==0)cout<<a[i]<<endl;//判断是否是以字符串T为前缀的单词,如果是输出
return 0;
}