CF443A Anton and Letters(去重set函数)

简介: CF443A Anton and Letters(去重set函数)

A. Anton and Letters


time limit per test


2 seconds


memory limit per test


256 megabytes


input


standard input


output


standard output


Recently, Anton has found a set. The set consists of small English letters. Anton carefully wrote out all the letters from the set in one line, separated by a comma. He also added an opening curved bracket at the beginning of the line and a closing curved bracket at the end of the line.


Unfortunately, from time to time Anton would forget writing some letter and write it again. He asks you to count the total number of distinct letters in his set.


Input


The first and the single line contains the set of letters. The length of the line doesn't exceed 1000. It is guaranteed that the line starts from an opening curved bracket and ends with a closing curved bracket. Between them, small English letters are listed, separated by a comma. Each comma is followed by a space.


Output


Print a single number — the number of distinct letters in Anton's set.


Examples


input

Copy

{a, b, c}


output

Copy

3


input

Copy

{b, a, b, a}


output

Copy

2


input

Copy

{}


output

Copy

0


题意分析,我们可以看到这里是应该字符串还有空格,所以我们不能用cin>>n输入,如果要用那么就getline(cin,n)来,但是我们这里可以用set函数解,具体实现看代码。


#include<bits/stdc++.h>
using namespace std;
set<char>ans;//char类型的集合
char n;
int main()
{
  while(cin>>n&&n!='}')//不断输入
  {
    if(n>='a'&&n<='z')//是小写字母
    ans.insert(n);//塞入集合
  }
  cout<<ans.size()<<endl;//输出集合的大小
}


正常的做法

 

#include<bits/stdc++.h>
using namespace std;
int main()
{
  char b;
  cin>>b;int ans[27]={0},sum=0;
  while(b!='}')
  {
    cin>>b;
    if(b>='a'&&b<='z')
    {
      ans[b-'a']++;
    }
  }
  for(int i=0;i<=26;i++)
  {
    if(ans[i])sum++;
  }
  cout<<sum;
}
相关文章
|
7月前
|
SQL HIVE
数仓学习-----named_struct和collect_set函数
数仓学习-----named_struct和collect_set函数
136 5
|
26天前
|
Java Python
gc模块的set_threshold函数
gc模块的set_threshold函数
|
5月前
|
存储 JSON 关系型数据库
mysql中find_in_set()函数用法详解及增强函数
总结而言,`FIND_IN_SET()`是MySQL中处理由逗号分隔的字符串列表的一种便捷方法,尤其适用于列表相对较短且不经常更改的场景。然而,对于更为复杂的需要高性能和可扩展性的数据库设计,它可能不是最优选择,应考虑使用更加正规化的数据库结构。
608 2
mysql中find_in_set()函数用法详解及增强函数
|
5月前
|
存储 语音技术 Python
语音识别,函数综合案例,黑马ATM,/t/t一个对不齐,用两个/t,数据容器入门,数据容器可以分为列表(list)、元组(tuple)、字符串(str)、集合(set)、字典(dict)
语音识别,函数综合案例,黑马ATM,/t/t一个对不齐,用两个/t,数据容器入门,数据容器可以分为列表(list)、元组(tuple)、字符串(str)、集合(set)、字典(dict)
|
7月前
|
数据采集 Python
10个Python set 常用操作函数!,bilibili面试题
10个Python set 常用操作函数!,bilibili面试题
10个Python set 常用操作函数!,bilibili面试题
|
SQL 分布式计算 大数据
`collect_set`函数用于将一组数据收集到一个集合中
`collect_set`函数用于将一组数据收集到一个集合中
246 1
|
分布式计算 MaxCompute
MaxCompute中,collect_set函数是一个聚合函数
MaxCompute中,collect_set函数是一个聚合函数
218 1
|
前端开发 JavaScript API
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(五)
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(五)
|
7月前
|
JSON 前端开发 JavaScript
【面试题】面试官:请你实现一个深拷贝,那如果是正则/set/函数怎么拷贝?
【面试题】面试官:请你实现一个深拷贝,那如果是正则/set/函数怎么拷贝?
|
7月前
|
Linux
内核态的文件操作函数:filp_open、filp_close、vfs_read、vfs_write、set_fs、get_fs
内核态的文件操作函数:filp_open、filp_close、vfs_read、vfs_write、set_fs、get_fs
665 0