一共交了五次,前四次都不对,最后一次AC了。
前两次想的太复杂了。
第四次没有考虑s里面没有s1的情况。
#include<iostream>
#include<sstream>
using namespace std;
int main()
{
// freopen("xxx.in","r",stdin);
// freopen("yyy.out","w",stdout);
int js=0;
string s="",s1="",s2="",s3;
getline(cin,s3);
stringstream ss;
ss<<s3;
getline(ss,s3,',');
s=s3;
getline(ss,s3,',');
s1=s3;
getline(ss,s3,',');
s2=s3;
if(s.find(s1)!=-1 && s.find(s1)+s1.size()-1<s.rfind(s2))
{
int l=s.find(s1)+s1.size();
cout << s.rfind(s2)-(s.find(s1)+s1.size());//-l+1
}
else
cout << "-1";
// fclose(stdin);
// fclose(stdout);
return 0;
}