悬赏关注
by 123456zzr @ 2024-01-05 21:21:05
本题十二分,不是暴力
by danlao @ 2024-01-05 21:27:37
@[yaodiguoan](/user/1023793) 是二分
by danlao @ 2024-01-05 21:28:04
~~还是一道map的好题~~
```cpp
#include<bits/stdc++.h>
using namespace std;
inline int read() {
int x=0,f=1;
char ch=getchar();
while (ch<'0'||ch>'9') {
if (ch=='-') f=-1;
ch=getchar();
}
while (ch>='0'&&ch<='9') {
x=x*10+ch-48;
ch=getchar();
}
return x*f;
}
int n,c,a[200001];
long long ans;
map<int,int>m;
signed main(){
n=read();
c=read();
for(int i=1;i<=n;i++){
a[i]=read();
m[a[i]]++;
a[i]-=c;
}
for(int i=1;i<=n;i++)ans+=m[a[i]];
cout<<ans<<endl;
return 0;
}
```
by kevin4 @ 2024-01-05 21:42:10
<https://www.luogu.com.cn/record/142014623>
你可以看到除了#2,#3,#4,#10以外跑得飞快
by kevin4 @ 2024-01-05 21:44:26
我#2也TLE了,但是其他都过了,很神奇
算来算去都觉得应该不会超时,我用的是C快速排序,然后二分找一段数字最前面的位置和最后面的位置,理论上是排序占了时间。如何解决?
by JDL_Seiran @ 2024-01-21 20:22:31