AcWing4399数字母

  • 题目
  • 解题思路
  • 代码

题目

给定一个仅包含小写字母的集合。
请你判断,集合中不同字母的数量。

输入格式
输入一行字符串,用以描述这个小写字母集合。
字符串以 { 开始,以 } 结束,中间列出所有集合中包含的小写字母,小写字母两两之间用逗号(,)加空格()隔开。

输出格式
一个整数,表示集合中不同字母的数量。

数据范围
前 5 个测试点满足,集合中包含的字母数量在 [0,10] 范围内。
所有测试点满足,集合中包含的字母数量在 [0,333] 范围内。

输入样例1:

{a, b, c}

输出样例1:

3

输入样例2:

{b, a, b, a}

输出样例2:

2

输入样例3:

{}

输出样例3:

0

解题思路

鄙人算法接触的不多,很多便捷方法不会,只能硬拆。
先通过getchar()函数,将输入字符中的字母提取出来(因为题目限定了输入的字母和符号,所以不需要加其他判定),存入一个数组,然后通过按序遍历数组查找与当前元素相同元素,并替换成空格‘ ’,最后统计数组中非空格字符数后输出。

代码

#include <iostream>using namespace std;const int N = 333;
char str[N];
char s;
int num=0;int main()
{int i = 0;while ((s = getchar()) != '\n'){if(s!=' '&&s!='{'&&s!='}'&&s!=','){str[i] = s;++i;}}int n = i;for (i = 0; i < n - 1; i++){for (int j = i + 1; j < n; j++){if (str[i] == str[j]){str[j] = ' ';}}}for (i = 0; i < n; i++){if (str[i]!=' '){++num;}}cout<<num;return 0;
}

AcWing4399数字母相关推荐

  1. c语言16进制数字母对应,写一个函数,输入一个十六进制数,输出相应的十进制数(附C程序 和 更加简单的实现方法)...

    写一个函数,输入一个十六进制数,输出相应的十进制数.基本思路是16进制数以字符串输入,然后经过转变为相应的10进制数,主要处理A~F六个字母对应的值,相应的程序如下: #include #includ ...

  2. 什么是算法算法有些什么特性_反正是什么算法

    什么是算法算法有些什么特性 What you need to know about the simple concept that powers the modern world. 您需要了解为现代世 ...

  3. java坐标点对称点的输出,编程java来确定一个对称的单词

    我在这里是新的,但我很难弄清楚如何编写代码来确定单词的输入,并查看第一个单词是否与单词的末尾匹配.你可以输入abba并得到答案,它是均匀对称的,aba是奇怪对称的. 请告诉我如何:( 只有两件主要的事 ...

  4. idgenerator 会重复吗_终极版:分布式唯一ID的几种生成方案

    在业务开发中,大量场景需要唯一ID来进行标识:用户需要唯一身份标识.商品需要唯一标识.消息需要唯一标识.事件需要唯一标识等,都需要全局唯一ID,尤其是复杂的分布式业务场景中全局唯一ID更为重要. 那么 ...

  5. python数据结构推荐书-自己想学数据结构,有大佬能推荐一下看什么书吗?

    数据结构就是你的工具箱,这些工具箱帮你把同类的信息装到了一起,同时还提供给你操作这些信息的各种便捷方法. 数据结构是计算机中的重中之重,而且数据结构一般和算法结合比较紧密,加上,数据结构和算法往往是算 ...

  6. 查看模拟器使用端口_为什么我们仍然使用模拟音频端口?

    查看模拟器使用端口 When leaks about what the chassis of the iPhone 7 might look like hit headlines earlier th ...

  7. php Spreadsheet Csv,使用 PhpSpreadsheet 实现读取写入 Execl

    使用 PhpSpreadsheet 实现读取写入 Execl 由 吴亲库里 创建于1年前, 最后更新于 1年前 版本号 #1 9742 views 1 likes 0 collects 前言 这两天需 ...

  8. java基础知识整理

    Day01 常见DOS命令和环境变量的配置 每天要做的事--笔记.作业.代码 知识点的学习--A:是什么? B:有什么特点? C:如何使用? D:什么时候使用? E:能讲给别人听么? 一.学习的前提 ...

  9. 日语输入法时的部分实用快捷键

    "Alt+Shift" 用于切换中文.英文.日文输入法(当然如果你的PC装有别的语言输入法,可以接着换下去) 日语输入法时:   "Ctrl+Caps" 切换成 ...

最新文章

  1. 批量插入数据库语句java_java相关:MyBatis批量插入数据到Oracle数据库中的两种方式(实例代码)...
  2. 教程:12、文件存储结构
  3. 分布式锁原理及实现方式
  4. C++ :: 的用法小结
  5. vnr光学识别怎么打开_水晶光电:光学元件需求向好,光学创新打开成长新空间,未来可期...
  6. Unity3D面试——真实的面试,unity3d面试
  7. IL语言之.ctor
  8. 定间隔字符翻转(Reverse String II)
  9. Android进阶知识:绘制流程(上)
  10. Java整合Spring发送邮件
  11. Codeforces Round #732 (Div. 2) C. AquaMoon and Strange Sort 思维
  12. 邻接表存储图利用BFS遍历
  13. 通过ping命令查看服务器是linux还是windows系列
  14. 自动生成html_python自动化测试中pytest的使用
  15. 势差、高度、结构、做工、逆熵
  16. 【云原生 | 34】Docker快速部署主流编程语言Java
  17. 程序员写个爬虫程序,整个公司被端了?
  18. 利用Windows内置工具测试硬盘速度
  19. Linux 学习资料
  20. C语言中统计英文单词的个数

热门文章

  1. ffmpeg文档16-音频编码器
  2. 小猫爪:AWR294x学习笔记04-AWR294x之ePWM
  3. 非规范商品项是什么?商标注册规范项和非规范项区别?
  4. 小程序公众号制作新媒体运营策划网站制作APP制作运营
  5. 学习java通过poi上传excel文件
  6. java莱茨狗_女神节特辑 | 程序媛可以多牛逼?温暖颜高技术好!
  7. C语言 画心形 程序员的简单浪漫
  8. 关键点检测算法——sift算法
  9. oracle房贷还款计划,还款计划表数据查询
  10. 计算机音乐作品,关于建立声乐作品计算机音乐伴奏曲库的一些思考