社区讨论

P4387 【深基15.习9】验证栈序列

灌水区参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@lzh1wc1h
此快照首次捕获于
2024/08/05 21:52
2 年前
此快照最后确认于
2024/08/06 07:39
2 年前
查看原帖
60分,求教dalaodalao
CPP
#include<bits/stdc++.h>
#define ll long long
#define f(a,b,c) for(ll a=b;a<=c;++a)
using namespace std;
vector<ll> s;
ll m,n,x,ans,y,t;
ll a[10000005],f[10000005];
char p;
int main()
{
	ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
	cin>>t;
	while(t--)
	{
		cin>>n;
		f(i,1,n) cin>>a[i];
		f(i,1,n) cin>>f[i];
		ll l=1,k=1,o=0;
		s.push_back(a[1]);
		while(l<n)
		{
			if(f[l]==s.back()) l++,s.pop_back();
			else if(k>=n)
			{
				o=1;
				cout<<"No\n";
//				cout<<l;
				break;
			}
			else s.push_back(a[++k]);
		}
		if(o!=1) cout<<"Yes\n";
	}
	return 0; 
}

回复

0 条回复,欢迎继续交流。

正在加载回复...