帮忙加快一下
查看原帖
帮忙加快一下
1121287
wgl_and_gzy楼主2024/3/9 18:50
#include <bits/stdc++.h>
#define int unsigned long long
using namespace std;
const int N = 2e6 + 10;
int n,k,p,ans,tot,op;
int cf[N],se[N],w[N];
vector <int> t[N];
signed main()
{
	//freopen("hotel.in","r",stdin);
	//freopen("hotel.out","w",stdout);
	memset(w,0x3f,sizeof(w));
	w[0] = 0;
	cin >> n >> k >> p;
	for(int i = 1;i <= n;i ++ )
	{
		int c,d;
		cin >> c >> d;
		cf[i] = d;se[i] = c;
		if(d <= p)  w[ ++ tot] = i;
		t[se[i]].push_back(i);
	}
	for(int i = 1;i <= n;i ++ )
	{	
		while(w[op + 1] <= i) op ++ ;
		for(int j = 0;j < t[se[i]].size();j ++ )
		{
			if(t[se[i]][j] <= w[op])
			{
				if(t[se[i]][j] != i) ans ++ ;	
			}
		}
	}
	cout << ans;
	return 0;
}
2024/3/9 18:50
加载中...