-
题目描述:
-
在一个字符串(1<=字符串长度<=10000,全部由大写字母组成)中找到第一个只出现一次的字符。
-
输入:
-
输入有多组数据
每一组输入一个字符串。
-
输出:
-
输出第一个只出现一次的字符下标,没有只出现一次的字符则输出-1。
-
样例输入:
-
ABACCDEFF AA
-
样例输出:
-
1
-1
-
-
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-
这个很简单吧。。。。不说了,看代码吧
-
-
#include<iostream> #include<string.h> using namespace std; char s[10001]; int slen; int main() { char temp; int j,k; while(cin>>s) { int nu[30]={0}; slen=strlen(s); for(j=0;j<slen;j++) nu[s[j]-'A']++; bool ga=false; for(j=0;j<26;j++) if(nu[j]==1) { ga=true; break; } if(ga) { for(k=0;k<slen;k++) if(s[k]-'A'==j) { cout<<k<<endl; break; } } else cout<<-1<<endl; } return 0; } /************************************************************** Problem: 1283 User: 午夜小白龙 Language: C++ Result: Accepted Time:60 ms Memory:1528 kb ****************************************************************/
-
寻找唯一字符
本文提供了一个简单高效的C++程序,用于解决在全大写字母组成的字符串中查找第一个仅出现一次的字符的问题。通过两次遍历字符串并使用数组记录字符出现次数的方式,实现了快速定位该字符的位置。
1497

被折叠的 条评论
为什么被折叠?



