查看: 1198|回复: 4
收起左侧

[资料分享] 统计字符个数

starter 2020-4-15 07:13:17 | 显示全部楼层 |阅读模式
邀请回答

马上注册,享受更多特权

您需要 登录 才可以下载或查看,没有帐号?立即注册   

x
链接:https://www.nowcoder.com/questio ... e95f50?f=discussion
来源:牛客网

编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127),换行表示结束符,不算在字符里。不在范围内的不作统计。

输入描述:

输入N个字符,字符在ACSII码范围内。



输出描述:

输出范围在(0~127)字符的个数。

示例1
输入

abc

输出

3

  1. #include<iostream>
  2. int main()
  3. {
  4. int a[128] ={0},sum =0;
  5. char c;
  6. while(cin>>c)
  7. {a[c]=1;
  8. }
  9. for(int i=0;i<128;i++)
  10. {
  11. if(a[i])
  12. {sum+=1;
  13. }
  14. cout<<sum;
  15. return 0;
  16. }
  17. }
复制代码




上一篇:倒叙输出数字
下一篇:将输入的数字倒序输出

已有 0 人打赏作者

回复 邀请回答送花

使用道具 举报

starter 2020-4-15 07:21:03 | 显示全部楼层
:另外一种方法:使用集合set,需要提前预定义#include<set>
set自动按照键值进行排序。使用方法:set<int> s;  s.insert(c);
  1. #include<iostream>
  2. #include<set>
  3. using namespace std;
  4. int main()
  5. {
  6. char c;
  7. set<char> s;
  8. while(cin>>c)
  9. if(c>=0 && c<=127)
  10. { s.insert(c);
  11. }
  12. cout<<s.size()<<endl;
  13. }
复制代码
回复 送花

使用道具 举报

starter 2020-4-15 07:24:55 | 显示全部楼层
python解法
  1. import sys
  2. print(len(set(list(sys.stdin.readline()))))
复制代码
回复 送花

使用道具 举报

starter 2020-4-15 07:31:27 | 显示全部楼层
python中的set集合可以自动去重,print(len(set(input()))也可以编译通过
回复 送花

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册   

本版积分规则

有技术问题,就上汇川技术社区

INOVANCE汇川技术 公众号

扫码下载掌上汇川APP

全国服务热线:8:30-17:30

4000-300124

苏州地址:江苏省苏州市吴中区越溪友翔路16号

深圳地址:深圳市龙华新区观澜街道高新技术产业园汇川技术总部大厦

Copyright © 2003-2100 汇川技术 Powered by Discuz! X3.4 ( 苏ICP备12002088号 )
快速回复 返回列表 返回顶部