题解: [Algo Beat Contest 002 A] A to Z

· · 题解

题面展示

给出 n 个字符串,询问其中有几个是所有字符各不相同的。

解题思路

这里给出 set 做法。

set<T> 是一种 STL 数据结构,用来维护由 T 组成的集合。下面假设一个集合的名字为 s,一个 T 类型的变量为 t

那么容易用 set 判断一个字符串的所有字符是否各不相同。

代码展示

#include<bits/stdc++.h>
using namespace std;
signed main(){
    int n;
    cin>>n;
    int cnt=0;
    for (int i=1;i<=n;i++){
        string s;
        cin>>s;
        set<char> p;
        int flag=1;
        for (int j=0;j<s.length();j++){
            if (p.find(s[j])!=p.end()){
                flag=0;
                break;
            }
            p.insert(s[j]);
        }
        cnt+=flag;
    }
    cout<<cnt<<"\n";
    return 0;
}