先奉上我n2log n的暴力代码不要纠格式的错误了qwq
#include<iostream>
#include<vector>
#define MAXN 200010
using namespace std;
int n,k,p;
vector<int>a[60];
int b[MAXN];
long long ans;
int read()
{
int p=0;char ch=' ';
while(ch<'0'||ch>'9')
ch=getchar();
while(ch>='0'&&ch<='9')
{
p=p*10+ch-'0';
ch=getchar();
}
return p;
}
int query(int l,int r)
{
int ans=110;
for(int i=l;i<=r;++i)
{
if(b[i]<ans)ans=b[i];
}
return ans;
}
int main()
{
// freopen("aa.in","r",stdin);
// freopen("a2.out","w",stdout);
n=read();k=read();p=read();
for(int i=1;i<=n;++i)
{
int ax=read();
a[ax].push_back(i);
b[i]=read();
}
for(int i=0;i<k;++i)
for(int j=0;j<a[i].size();++j)
for(int l=j+1;l<a[i].size();++l)
if(query(a[i][j],a[i][l])<=p)
ans++;
printf("%lld",ans);
return 0;
}
但是嘛……由于数据过水,这道题是可过的。