链接:https://ac.nowcoder.com/acm/contest/558/B
来源:牛客网
题目描述
小猫在研究字符串。
小猫在研究重复。
给定N个长度为M的字符串,问这些字符串去重后有几种。
输入描述:
第一行两个正整数N,M,表示字符串的个数与长度。 接下来N行,每行一个长度为M的字符串。
输出描述:
一行一个整数,表示答案。
示例1
输入
4 3 abc abb abb cbc
输出
3
备注:
1≤N≤105,1≤M≤100,字符都是小写字母
思路:用暴力桶排数量为1 加起来然后用set整个字符去重ac
代码:
#include<iostream>
#include<cstring>
#include<algorithm>
#include<set>
using namespace std;
int a[1009];
int main()
{
int n,m;
scanf("%d%d",&n,&m);
set<string>A;string s,h;
for(int i = 0;i<n;++i)
{
cin>>s;memset(a,0,sizeof(a));h="";
for(int j = 0;j < s.length();++j)
{
a[s[j]-'a']++;
if(a[s[j]-'a']<=1)
{
h+=(s[j]+'a');
}
}
A.insert(h);
}
printf("%d\n",A.size());
return 0;
}