EternityForMe @ 2024-08-24 10:36:17
我真的做不懂呀??
#include<bits/stdc++.h>
using namespace std;
long long b[1001];
int main(){
ios::sync_with_stdio(NULL);
cin.tie(0);
cout.tie(0);
string a;
cin>>a;
for(long long i=0;i<a.size();i++){
b[a[i]]++;
}
for(long long i='a';i<='z';i++){
if(b[i]==1){
cout<<char(i)
return 0;
}
}
cout<<"no";
return 0;
}
by hhztl @ 2024-08-24 10:37:37
@EternityForMe 第一个
by hhztl @ 2024-08-24 10:39:28
@EternityForMe 这个“第一个”不是指在字母表里的顺序,而是在字符串中出现的次序
by Scez @ 2024-08-24 10:40:20
@EternityForMe 你cout的分号呢)
by Scez @ 2024-08-24 10:41:18
@EternityForMe 应该把字符串从头往后遍历一遍,看那个字符的出现次数
by study_Zzz @ 2024-08-24 10:51:32
#include <bits/stdc++.h>
using namespace std;
char s[100000+10];
int a[100000+10];
int main(){
cin.getline(s, 100000);
for(int i=0; i<strlen(s); ++i){
int v=s[i];
a[v]++;
}
for(int i=0; i<strlen(s); ++i){
if(a[s[i]]==1){
cout << s[i];
return 0;
}
}
cout << "no";
return 0;
}
by study_Zzz @ 2024-08-24 10:53:53
楼上说的对,遍历整个字符串
by study_Zzz @ 2024-08-24 10:55:08
还有就是你的桶数组用的不对
by study_Zzz @ 2024-08-24 10:55:39
@ EternityForMe