捞,玄关
  • 板块灌水区
  • 楼主YFF1
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/5/26 19:57
  • 上次更新2024/5/26 21:53:41
查看原帖
捞,玄关
1046636
YFF1楼主2024/5/26 19:57

P3952求调!!!

#include<bits/stdc++.h>
using namespace std;
int q,n;
string t,s,t2;
struct node{
	char n;
	string s,e;
}a[200005];
int main () {
	cin>>q;
	while(q--){
		cin>>n>>t2;
		map<char,bool>mp;
		t="";
		for(int i=2;i<t2.size()-1;i++)t+=t2[i];
		int cnt=0,cnt2=0,cnt3=0;
		for(int i=1;i<=n;i++){
			cin>>s;
			if(s=="F"){
				cin>>a[i].n>>a[i].s>>a[i].e;
				if(mp[a[i].n]!=1){
					mp[a[i].n]=1;
					cnt3++;
				}
				cnt++;
			}
			else cnt2++;
		}
		if(cnt3!=cnt2||cnt2==0||cnt==0){
			cout<<"ERR"<<endl;
			continue;
		}
		int sum=0,sum2=0,sum3=0;
		for(int i=1;i<=n;i++){
			if(a[i].s!="n"){
				if(a[i].e!="n")sum2=1;
				else sum++;
			}
			else{
				sum2=1;
				if(a[i].e!="n")break;
			}
		}
		if(sum==0&&sum2==1){
			if(t=="1")cout<<"Yes"<<endl;
			else cout<<"No"<<endl;
		}
		else {
			if(t=="1")cout<<"No"<<endl;
			else{
				int pos=t[2]-'0';
				if(sum==pos)cout<<"Yes"<<endl;
				else cout<<"No"<<endl;
			}
		}
	}
	return 0;
}
2024/5/26 19:57
加载中...