问题标题: 酷町堂:2718 最后一次出现2

0
0
已解决
王子健
王子健
初级天翼
初级天翼
#include<bits/stdc++.h>
using namespace std;     
int main()
{
    long long l;
    string a;
    char b;
    cin>>b;
    getline(cin,a);
    getline(cin,a);//输入字符串a
    l=a.size()-1;//求字符串a的长度
    for(int i=l;i>=0;i--)
    {
        if(a[i]==b)
        {
            cout<<i+1;
            break;
        }  
        else if(a[i]!=b)
        {
            cout<<"NOTFIND"<<endl;
        }
    }
    return 0;
}

咋错的,在c++编译过了一个测试点,在网站上0分。

请大佬指教。


0
已采纳
张元宝
张元宝
修练者
修练者

在这里,输入不是一行,可以直接

 

你用

else if(a[i]!=b)

{

cout<<"NOTFIND"<<endl;

}

这个语句在第一次找不到就输出了。

cin>>a;
    for(int i=a.size()-1;i>=0;i--){
        if(a[i]==b){
            cout<<i+1;
            return 0;
        }
    }
    cout<<"NOTFIND";

这样才对。

望采纳!

0
朱智霖
朱智霖
新手守护
新手守护

readln(n);
    readln(s);
    t:=length(s);
    for i:=t downto 1 do
    begin
        if s[i]=n then break;
    end;
    if (i=1)and(s[i]<>n) then write('NOTFIND')
    else write(i);

给你不谢

 

0
赵逸凡
赵逸凡
初级启示者
初级启示者

从后往前遍历的经典字符串

0
0
我要回答