题意理解,样例过了,全部WA,大佬帮帮忙QWQ
查看原帖
题意理解,样例过了,全部WA,大佬帮帮忙QWQ
931492
xiaohuanxiong楼主2024/3/17 22:34
#include <bits/stdc++.h>
using namespace std;
struct Node
{
	long long data,group;
	Node* next;
};
Node *head,*p,*q,*tail;
long long n,m,a[100001],t,input,flag=0,flag2=0;
string ch;
int main()
{
	cin>>n>>m;
	for (int i=0;i<n;i++)
		cin>>a[i];
	cin>>t;
	while (t--)
	{
		cin>>ch;
		if (ch=="push")
		{
			flag2=0;
			cin>>input;
			if (flag==0)
			{
				head=new Node;
				tail=head;
				head->data=input;
				head->next=tail;
				head->group=a[input];
				tail->next=head;
				flag=1;
			}
			else
			{
				for (p=head;;p=p->next)
				{
					if (p->group==a[input]&&p->next->group!=a[input])
					{
						q=new Node;
						q->data=input;
						q->next=head;
						q->group=a[input];
						q->next=p->next;
						p->next=q;
						flag2=1;
						break;
					}	
					if (p==tail)
						break;
				}
				if (flag2==0)
				{
					q=new Node;
					q->data=input;
					q->next=head;
					q->group=a[input];
					tail->next=q;
					tail=q;
				}
			}
		}
		if (ch=="pop")
		{
			cout<<head->data<<endl;
			head=head->next;
			tail->next=head;
		}
	}
 	return 0;
}
2024/3/17 22:34
加载中...