大佬们,70分求助!!!!!!

B2110 找第一个只出现一次的字符

nuoxi6868 @ 2023-07-30 21:06:56


#include<bits/stdc++.h>
using namespace std;
char a[1100+10],b[1100+10];
int main(){
    int n=0,c=0;
    while((a[n]=getchar())!='\n'){
        n++;
        c++;
    }
    for(int i=0;a[i]!=0;i++){
        b[i]=a[i];
    }
    int q=0;
    for(int i=0;i<c;i++){
        q=0;
        for(int j=0;j<c;j++){
            if(a[i]==b[j]){
                q++;
            }
        }
        if(q==1){
            cout<<a[i];
            return 0;
        }
    }
    cout<<"no";
    return 0;
}

by luogu10086 @ 2023-07-30 21:16:03

你可以先创一个cnt数组,大小30,输入一个字符c[i],cnt[c[i]-'a']++,输入完了以后,再遍历一遍输入的字符串,如果找到一个只出现了一次的字符,直接输出然后return 0,如果没找到,循环结束后输出一个“no”就行。


by nuoxi6868 @ 2023-07-30 21:19:50

我没学cnt呀


by ybc2025chenyuyang @ 2023-07-30 22:56:53

没学cnt?? 什么意思?


by wbhqm @ 2023-08-02 17:32:31

@nuoxi6868 cnt是数组名


|