前缀字符串(利用sort函数)

在这里插入图片描述
在这里插入图片描述
代码:

#include<bits/stdc++.h>
using namespace std;
string s[121];
int main()
{
    
    
	int n=0;
	while(true)
	{
    
    
		cin>>n;
		if(n==0) break;
		for(int i=0;i<n;++i)
		{
    
    
			cin>>s[i];
		}
		sort(s,s+n);
		int sum=1;
		for(int i=1;i<n;++i)
		{
    
    
			if(s[i].find(s[i-1])!=0) sum++;//利用字符串的find函数进行子串定位
		}
		cout<<sum<<endl;
	}
	
	return 0;
}

substr函数也可以使用
s[i].substr(起点位置,终点位置)==s[i-1]
(本题中起点:0,终点:s[i-1].length()-1)

猜你喜欢

转载自blog.csdn.net/weixin_43901182/article/details/112696253
今日推荐