比赛 CSP2023-J模拟赛 评测结果 AAAAAAAAAAAAAAAAAAAA
题目名称 切分子串 最终得分 100
用户昵称 Mojians 运行时间 0.008 s
代码语言 C++ 内存使用 0.86 MiB
提交时间 2023-10-18 18:52:06
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;

string a[160],b[160];
int ans=0;

bool check(string a,string b){
	int cnt=0;
	int na=a.length();
	int nb=b.length();
	for(int i=0;i<=nb-na;i++){
		for(int j=i;j<i+na;j++){
			if(a[j-i]==b[j])cnt++;}
			if(cnt==na){
				return 1;}
			cnt=0;}
	return 0;}

int main(){
	freopen("cutstring.in","r",stdin);
	freopen("cutstring.out","w",stdout);
	
	string s,t;
	cin>>s>>t;
	int nt=t.length();
	for(int i=1;i<nt;i++){
		for(int j=0;j<i;j++){
		a[i]+=t[j];}
	for(int j=i;j<nt;j++){
		b[i]+=t[j];}}
	int ns=s.length();
	for(int i=1;i<nt;i++){
		if(a[i].length()>=ns||b[i].length()>=ns)continue;
		if(check(a[i],s)&&check(b[i],s)){
			ans++;}}
	cout<<ans<<endl;
	return 0;}