Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
3488 | 邓小龙 | 只出现一次的字符 | C++ | Accepted | 59 MS | 488 KB | 915 | 2024-06-08 18:20:15 |
# include<iostream> # include<cstring> using namespace std; //思路: //按顺序遍历,当前字符与后面字符如果相同, //则删除后面的字符与当前字符,得到新的字符串, //继续遍历,直到字符串长度为0或者找第一个仅出现一次的字符 int main(){ string s1; getline(cin,s1); int len_s1=s1.size(); int i=0; while(len_s1){ bool f=1;//标记,f=1代表仅有一个当前字符 for(int j=1;j<len_s1;j++){ if(s1[i]==s1[j]){ f=0;//当前字符不止一个 s1.erase(j,1);//删除相同的字符 j--;//因为删除了一个字符,要退回一格 //len_s1=s1.size(); } } if(f==0) {s1.erase(0,1);len_s1=s1.size();} else {cout<<s1[0]<<endl;return 0;} } cout<<"no"<<endl; return 0; }