高级光能
2718 最后一次出现2经验值:800
题目描述 Description
给你一个字符串s和一个字符c,请你统计一下字符c最后一次出现在字符串s的第几个字符,如果c在s中没有出现过则输出“NotFound”。
输入描述 Input Description
第一行:一个字符,c
第二行:一个字符串,s,s的长度不超过260
输出描述 Output Description
如果字符c在s中出现过则输出一个整数x表示c最后一次出现是在字符串s的第x位,如果字符c没有在字符串s中出现过则输出“NotFound”
样例输入 Sample Input
q qwfaDFGrgsdfqfsertSFG
样例输出 Sample Output
13
90分代码:
- #include<bits/stdc++.h>
- using namespace std;
- int main()
- {
- long long l;
- string a;
- char b;
- cin>>b;
- getline(cin,a);
- getline(cin,a);
- l=a.size()-1;
- for(int i=l;i>=0;i--)
- {
- if(a[i]==b)
- {
- cout<<i+1;
- break;
- }
- for(int i=a.size()-1;i>=0;i--){
- if(a[i]==b){
- cout<<i+1;
- return 0;
- }
- }
- cout<<"NOTFIND";
- }
- return 0;
- }
王俊杰在2020-07-12 11:40:12追加了内容
why
王俊杰在2020-07-13 11:48:56追加了内容
王俊杰在2020-07-13 11:50:33追加了内容
2718:最后一次出现2
Wrong Answer:90分代码共享
王俊杰的测评结果:
测试点
结果
时间
1
Accepted
0ms
偷看一下数据
2
Wrong Answer
0ms
偷看一下数据
3
Accepted
0ms
偷看一下数据
4
Accepted
0ms
偷看一下数据
5
Accepted
0ms
偷看一下数据
6
Accepted
0ms
偷看一下数据
7
Accepted
0ms
偷看一下数据
8
Accepted
0ms
偷看一下数据
9
Accepted
0ms
偷看一下数据
10
Accepted
0ms
偷看一下数据
我的提交(cpp):
#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;
}
for(int i=a.size()-1;i>=0;i--){
if(a[i]==b){
cout<<i+1;
return 0;
}
}
cout<<"NOTFIND";
}
return 0;
}
王俊杰在2020-07-13 12:10:09追加了内容
- #include <iostream>
- #include <cmath>
- #include <string>
- using namespace std;
- int main()
- {
- long long l;
- string a;
- char b;
- cin>>b;
- getline(cin,a);
- getline(cin,a);
- l=a.size()-1;
- for(int i=l;i>=0;i--)
- {
- if(a[i]==b)
- {
- cout<<i+1;
- break;
- }
- for(int i=a.size()-1;i>=0;i--){
- if(a[i]==b){
- cout<<i+1;
- return 0;
- }
- }
- cout<<"NotFound";
- }
- return 0;
- }
- 30分·
中级天翼
您的代码无问题,把
cout<<"NOTFIND";
改为
cout<<"NotFound";
即可AC
望采纳!
包涵宇在2020-07-13 12:31:23追加了内容
1.删掉
l=a.size()-1;
for(int i=l;i>=0;i--)
{
if(a[i]==b)
{
cout<<i+1;
break;
}
(下面还有一个大括号也要删)
2.将
cout<<"NOTFIND";
改为
cout<<"NotFound";
AC!
高级天翼
这个不是30分吗?
李瑞曦在2020-07-12 11:58:32追加了内容
https://wenda.codingtang.com/questions/3044/按照这个改,并且把NOTFIND改成NotFound就行了!
中级光能
仔细看题,是输出c最后一次出现在字符串s的第几个字符的位置,所以要定义一个下标pos来更新这个位置,定义初值为-1
for(int i=0;i<a.size();i++){
if(a[i]==c) pos=i;
}
在最后加一个特判,判断pos是否不为-1,如果是,cout<<pos+1;
else cout<<"NotFound";