对于每组测试,按字符串中有出现的字符的ASCII码升序逐行输出不同的字符及其个数(两个数据之间留一个空格),每两组测试数据之间留一空行,输出格式参照输出样例
时间: 2024-03-06 13:50:48 浏览: 73
C语言实验输入一个字符,找出它的前驱字符和后继字符,并按ASCII码值,按从大到小的顺序输出这3个字符及其对应的ASCII码值。
5星 · 资源好评率100%
这是一个字符串统计的问题,可以使用哈希表来解决。具体步骤如下:
1. 读入字符串。
2. 使用哈希表统计每个字符出现的次数。
3. 将哈希表转换为数组,并按照字符的 ASCII 码升序排序。
4. 输出数组中不为零的元素。
以下是样例代码,仅供参考:
```python
while True:
try:
s = input().strip()
except:
break
if not s:
continue
# 统计每个字符出现的次数
count = {}
for c in s:
count[c] = count.get(c, 0) + 1
# 转换为数组并排序
arr = []
for k in count:
arr.append((ord(k), count[k]))
arr.sort()
# 输出结果
for k, v in arr:
print("{} {}".format(chr(k), v))
print()
```
注意,以上代码仅适用于 Python 3.x 版本,如果使用 Python 2.x 版本需要稍作修改。
阅读全文