BZOJ2456 mode 抵消思想

这道题我不会……看题解才会。

刚开始一看,这不是水题吗?后来发现根本不是……空间只有1MB啊啊啊!

于是看了题解,记录一下当前出现最多的数和比剩余的数多多少个就行了,具体看代码吧。

//BZOJ2456
#include<cstdio>
using namespace std;
int n,now,tms=1,p;
int main()
{
	scanf("%d",&n);
	scanf("%d",&now);
	for(int i=1;i<n;i++)
	{
		scanf("%d",&p);
		if(p==now) tms++;
		else if(tms>1) tms--;
		else now=p;
	}
	printf("%d\n",now);
	return 0;
}

你可能感兴趣的:(BZOJ2456 mode 抵消思想)