RE了,不知道为什么
查看原帖
RE了,不知道为什么
612689
hh456789楼主2023/1/6 21:07
#include<iostream>
#include<algorithm>
using namespace std;
struct aa
{
	int sum;
	int times;
}a[100001];
struct bb
{
	int id;
	int T;
}b[100001];
bool com(const bb x,const bb y)
{
	return x.T<=y.T;
}
bool vis[100001];
int main()
{
	int n,m,t;
	cin>>n>>m>>t;
	for(int i=1;i<=m;i++) cin>>b[i].T>>b[i].id;
	sort(b+1,b+m+1,com);
	for(int i=1;i<=m;i++)
	{
		if(!a[b[i].id].sum) a[b[i].id].sum=2,a[b[i].id].times=b[i].T;
		else
		{
			if(b[i].T!=a[b[i].id].times) a[b[i].id].sum=a[b[i].id].sum-b[i].T+a[b[i].id].times+1;
			if(a[b[i].id].sum<=3&&vis[b[i].id]) vis[b[i].id]=false;
			if(a[b[i].id].sum<0) a[b[i].id].sum=0;
			a[b[i].id].sum+=2;a[b[i].id].times=b[i].T;
			if(a[b[i].id].sum>5) vis[b[i].id]=true;
		}
	}
	int count=0;
	for(int i=1;i<=n;i++)
	{
		if(vis[i])
		{
			if(a[i].sum-t+a[i].times<=3) vis[i]=false;
			if(vis[i]) count++;
		}
	}
	cout<<count;
 } 
2023/1/6 21:07
加载中...