50pts求调
查看原帖
50pts求调
1009705
tuantuan8888楼主2024/10/25 17:06
#include <bits/stdc++.h>  
using namespace std;  
const int N = 1e5 + 1;  
int n,t,ans;  
map <int,int> mp[N];  
signed main()   
{  
	int U;  
	scanf("%d%d%d",&n,&U,&t);  
	while(U--)  
	{  
		int v,u;  
		scanf("%d%d",&v,&u);  
		mp[u][v]++;  
	}   
	for(int i = 1; i <= n; i++)  
	{  
		int now = 0,l = 0;  
		bool flag = false;  
		for(auto p : mp[i])  
		{  
			now = max(0,now - (p.first - l - 1));    
			l = p.first;  
			now += 2 * p.second;  
			if(now > 5) flag = true;  
			if(now <= 3) flag = false;  
		}  
		now = max(0,now - max(t - l,0));  
		if(now > 5) flag = true;  
		if(now <= 3) flag = false;  
		ans += flag;  
	}  
	printf("%d\n",ans);  
}
2024/10/25 17:06
加载中...