题目描述
接受一个只包含小写字母的字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)
题目来源
描述
实现删除字符串中出现次数最少的字符,若出现次数最少的字符有多个,则把出现次数最少的字符都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。
数据范围:输入的字符串长度满足 1 <= n <=20 ,保证输入的字符串中仅出现小写字母
输入描述:
字符串只包含小写英文字母, 不考虑非法输入,输入的字符串长度小于等于20个字节。
输出描述:
删除字符串中出现次数最少的字符后的字符串。
示例1
输入:aabcddd
输出:aaddd
思路
具体实现
#include <stdio.h>
#include <string.h>
int main(){
char s[20];
while(scanf("%s",&s) != EOF){
int ascll[26] = {0};
int len = strlen(s),min=20;
for(int i=0;i<len;i++){
ascll[s[i]-'a']++;
}
for(int i=0;i<26;i++){
if(ascll[i] < min && ascll[i] > 0)
min = ascll[i];
}
for(int i=0;i<len;i++){
if(ascll[s[i]-'a'] != min)
printf("%c",s[i]);
}
printf("\n");
}
return 0;
}