刚入谷的萌新求助,惨烈TLE
查看原帖
刚入谷的萌新求助,惨烈TLE
342090
Lips楼主2020/8/2 12:49
#include<cstdio>
using namespace std;
const int MAXN=300010;
int n,p,ans;
int sum[6]; 
bool a[10][MAXN];
inline int read()
{
	int s=0,w=1;
	char ch=getchar();
	while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
	while(ch>='0'&&ch<='9')s=s*10+(ch-'0'),ch=getchar();
	return s*w;
}
int main() 
{
	n=read(),p=read();
	for(register int i=1;i<=n;i++)
	{
		int x=read(),y=read();
		if(a[x][y]==0) ans++,a[x][y]=!a[x][y];
		for(register int j=1;j<=p;j++)
			if(j+y>p) break;
			else if(a[x][j+y]) a[x][j+y]=!a[x][j+y],ans++;
	}
	printf("%d\n",ans);
}
2020/8/2 12:49
加载中...