nefu 1029 字符串

Description

给定一个字符串,现在要你从这个字符串中找到第一个只出现一次的字符 ,很简单吧!
快敲代码,动作!   

Input

多组输入,每行一个字符串(小写字母a~z)字符串长度不超过50

Output

输出第一个只出现一次的字符, 如果不存在输出-1

Sample Input

abdcefabch

bcefgbcef

cdecde

Sample Output

d
 
g

-1



//这道题我想了很久很久。。。思想是历遍找到第一个与后面不重复的词,然后在去比较前面的单词,看是不是不重复的,依次类推;
//嗯,,具体看代码吧,有些解释不清。。。

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int data[26],flag,k,j;
char a[55];
int main()
{
    while(cin>>a)//abdcefabch 2 9 9-2=7
    {
        flag=1;
        for(int i=0;i<strlen(a);i++)
        {
           k=0;
           for(j=i+1;j<strlen(a);j++)
           {
               if(a[i]==a[j])
               break;
               else
               k++;
           }
           //cout<<k<<endl;
           //cout<<strlen(a)-i-1<<endl;
           if(k==strlen(a)-i-1)
           {
              // cout<<"+++"<<endl;
               for(int m=0;m<i;m++)
               {
                   if(a[m]==a[i])
                   break;
                   else
                   k++;
               }
               //cout<<"??"<<endl;
               //cout<<k<<endl;
               if(k==strlen(a)-1)
               {
                   cout<<a[i]<<endl;
                   flag=0;
                   break;
               }
           }
        }
        if(flag==1)
        cout<<"-1"<<endl;
    }
    return 0;
}

 

posted @ 2016-03-24 23:32  邻家那小孩儿  阅读(180)  评论(0编辑  收藏  举报