40分蒟蒻求助,点3、5、6、8、9、10都没过
查看原帖
40分蒟蒻求助,点3、5、6、8、9、10都没过
1416687
Lsy20110524楼主2024/10/24 16:39

这个逻辑应该没问题吧,怎么错的?

#include<bits/stdc++.h>
using namespace std;
int s,y,ans;
string a,b;
int main()
{
	getline(cin,a);
	getline(cin,b);
	for(int i=b.size()-1;i>=0;i--){
		if(i==0||b[i-1]==' '&&b[i+a.size()]==' '||i+a.size()==b.size()){
			for(int j=0;j<a.size();j++)
				if(b[i+j]==a[j]||int(b[i+j])+32==int(a[j])||int(b[i+j])==int(a[j])+32){
					ans++;
					y=s;
					s=i;
				}
				else{
					s=y;
					ans-=j;
					break;
				}
		}
	}
	ans=ans/a.size();
	if(ans==0){
		cout<<-1;
	}
	else
		cout<<ans<<" "<<s;
	return 0;
}
2024/10/24 16:39
加载中...