1318 唯一的最好
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 :65536/32768 KB(Java/Others)
提交数 : 4750 | 通过数 : 1721
题目描述
我们经常听到:“唯一的总是最好的。”不知道是哪个名人说的(好像是我说的。。。暴扁中。。。)。假设现在有一堆宝物,有些品种的宝物数量有多个,物以稀为贵,多了就不稀奇了。你能找到数量只有一个的宝物吗?宝物用小写英文字母a-z表示,只有26种哦,亲。
输入要求
输入为一行字符串,全部由小写字母表示,长度不大于100。如“abcdea”表示宝物b、c、d、e各出现了1次,而宝物a出现了2次。
输出要求
输出只出现一次的那种宝物的对应字符,如果出现一次的字符有多个,那么输出首先出现的那个字符即可。如果没有只出现一次的字符,那么输出“NO only character”。
输入样例
abcdefggfdca
输出样例
b
提示
来源
NBU OJ
代码如下
#include<stdio.h>
#include<string.h>
int main()
{
char s[1000];
int a[100]={0};
gets(s);
int len=strlen(s);
for(int i=0;i<len;i++)
{
a[s[i]-'a']++;
}
int flag=0;
for(int i=0;i<len;i++)
{
if(a[s[i]-'a']==1)
{
flag=1;
printf("%c\n",s[i]);
break;
}
}
if(flag==0)
printf("NO only character\n");
return 0;
}