一、知识点
代码写的极为精妙
二、题目
1、描述
实现删除字符串中出现次数最少的字符,若出现次数最少的字符有多个,则把出现次数最少的字符都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。
数据范围:输入的字符串长度满足 1≤𝑛≤20 ,保证输入的字符串中仅出现小写字母
2、输入
字符串只包含小写英文字母, 不考虑非法输入,输入的字符串长度小于等于20个字节
3、输出
删除字符串中出现次数最少的字符后的字符串
三、自己写的代码
#include<stdio.h>
int main() {
int letter[26] = {0};
char line[21];
int i = 0, min = 21;
scanf("%s", line);
while (line[i] != '\0') {
letter[line[i] - 'a']++;
i++;
}
for (i = 0; i < 26; i++) {
if (letter[i] > 0 && letter[i] < min) {
min = letter[i];
}
}
i = 0;
while (line[i] != '\0') {
if (letter[line[i] - 'a'] != min) {
printf("%c", line[i]);
}
i++;
}
return 0;
}