纪中暑假集训 2020.08.06【NOIP提高组】模拟 T1:【NOIP2015模拟11.4】刷题计划

【NOIP2015模拟11.4】刷题计划

Description

在这里插入图片描述

Input

在这里插入图片描述

Output

在这里插入图片描述

Sample Input

10000 12
2 1
3
2 9999
3
1 1
3
2 1
3
2 10000
3
2 9999
3

Sample Output

1
9999 1
9999
9999
10000 9999
9999 10000

Data Constraint

在这里插入图片描述

反思&题解

比赛&正解思路: 可以看到m非常非常的小 (出题人良心) ,直接 O ( n 3 ) O(n^3) 暴力模拟
反思: 感动终于有一道签到题了

CODE

#include<bits/stdc++.h>//原谅我一道水题的程序又臭又长……
using namespace std;
long long n,m,xx[105][2],tot,bz[105],ans[105],sum,a[105];
int main()
{
	freopen("problem.in","r",stdin);
	freopen("problem.out","w",stdout);
	scanf("%lld%lld",&n,&m);
	long long i;
	for (i=1;i<=m;i++)
	{
		long long x,y;
		scanf("%lld",&x);
		xx[i][0]=x;
		if (x!=3)
		{
			scanf("%lld",&y);
			xx[i][1]=y;
			long long j;
			bool flag=false;
			for (j=1;j<=tot;j++)
			{
				if (a[j]==y)
				{
					flag=true;
					break;
				}
			}
			if (!flag) a[++tot]=y;
		}
	}
	for (i=1;i<=tot;i++)
		bz[i]=1;
	for (i=1;i<=m;i++)
	{
		if (xx[i][0]==1)
		{
			long long j,now;
			for (j=1;j<=tot;j++)
			{
				if (a[j]==xx[i][1])
				{
					now=j;
					break;
				}
			}
			if (bz[now]==2)
			{
				for (j=1;j<=sum;j++)
				{
					if (ans[j]==xx[i][1])
					{
						long long t=j,k;
						for (k=t;k<=sum-1;k++)
							ans[k]=ans[k+1];	
						sum--;
						break;
					}	
				}
			}
			bz[now]=3;
		}
		else if (xx[i][0]==2)
		{
			long long j,now;
			for (j=1;j<=tot;j++)
			{
				if (a[j]==xx[i][1])
				{
					now=j;
					break;
				}
			}
			if (bz[now]==1)
			{
				sum++;
				for (j=sum;j>=2;j--)
					ans[j]=ans[j-1];
				ans[1]=a[now];
				bz[now]=2;
			}
			else if (bz[now]==2)
			{
				for (j=1;j<=sum;j++)
				{
					if (ans[j]==xx[i][1])
					{
						long long t=j,k;
						for (k=t;k>=2;k--)
							ans[k]=ans[k-1];
						ans[1]=xx[i][1];
						break;	
					}
				}
			}
		}
		else
		{
			if (sum>20)
			{
				long long j;
				for (j=1;j<=20;j++)
					printf("%lld ",ans[j]);
				printf("\n");
			}
			else
			{
				long long j;
				for (j=1;j<=sum;j++)
					printf("%lld ",ans[j]);
				printf("\n");	
			}
		}
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/CMC_YXY/article/details/107842452