#include <stdio.h> int main() { char str[20]={'\0'}; while(scanf("%s\n",&str)!=EOF) { int len=0; int min_cnt,min_aph=0; int rc[26]={0}; //记录26个字母出现的次数 int tmp; //临时存放转换后的字母 char min_c; //存放出现次数最少的字母 len=strlen(str); int i,j,k=0; //记录每个字符出现的次数 for(i=0;i<len;i++) { tmp=(int)(str[i]-97); rc[tmp]++; } //找到出现次数最少的字符 for(i=0;i<26;i++) { if(rc[i]!=0) { min_aph=i; min_cnt=rc[i]; break; } } for(i=0;i<26;i++) { if(rc[i]<min_cnt&&rc[i]!=0) { min_aph=i; min_cnt=rc[i]; } } min_c=(char)(min_aph+97); //删除它 for(i=0;i<len;i++) { if(str[i]==min_c) { for(j=i;j<len;j++) { str[j]=str[j+1]; } len--; } } //再次查看是否有相同长度的字符 for(i=0;i<26;i++) { if(rc[i]==min_cnt) { min_aph=i; min_c=(char)(min_aph+97); for(j=0;j<len;j++) { if(str[j]==min_c) { for(k=j;k<len;k++) { str[k]=str[k+1]; } len--; } } } } //输出删除后的字符串 puts(str); } return 0; }