95分求调
查看原帖
95分求调
1776874
Wivznziv楼主2025/8/5 12:10

RT,WA#14

#include<iostream>
#include<cstdio>
using namespace std;
#define maxn 10001
string s,h;
int p,lens;
int brace[maxn];
string ping(int start,int len)
{
  string now="";
  for(int i=start;i<=start+len-1;i++)
    now+=s[i];
  return now;
}

int main()
{
	cin>>s;
	lens=s.size();
	int now=0;
	for(int i=0;i<lens;i++)
	{
	  if(s[i]=='{')  {now++;brace[i]=now;}
	  if(s[i]=='}')  {brace[i]=now;now--;}
	  if(s[i]!='{' && s[i]!='}')  brace[i]=now; 
	}
	cin>>p;
	for(int i=1;i<=p;i++)  cin>>h;
	int lenh=h.size();
	for(int i=0;i<lens;i++)
	  if(ping(i,lenh)==h && brace[i]==p)
	    for(int j=i+lenh;j<lens;j++)
		  {
		    if(s[i+lenh]=='{')  break;
		    if(s[j]==',' || s[j]=='}')  return 0;
		    if(s[j]>='0' && s[j]<='9')  cout<<s[j];
		  }
	return 0;
}

2025/8/5 12:10
加载中...