| 比赛 |
2026.1.3 |
评测结果 |
WWAAWAWAAA |
| 题目名称 |
极差序列 |
最终得分 |
60 |
| 用户昵称 |
HXF_0号 |
运行时间 |
0.595 s |
| 代码语言 |
C++ |
内存使用 |
5.18 MiB |
| 提交时间 |
2026-01-03 09:15:58 |
显示代码纯文本
#include<bits/stdc++.h>
#define N 200001
#define ll long long
#define mod 998245353
using namespace std;
ll n,k,a[N],ans,minx=1,maxx=2,pow2[N],cnt;
int main(){
freopen("maxmin.in","r",stdin);
freopen("maxmin.out","w",stdout);
cin>>n>>k;
pow2[0]=1;
for(int i=1;i<=n;i++){
cin>>a[i];
pow2[i]=pow2[i-1]*2%mod;
}
sort(a+1,a+n+1);
while(minx<=n&&maxx<=n){
if(a[maxx]-a[minx]==k){
ans=(ans+pow2[maxx-minx-1])%mod;
maxx++;
}else if(a[maxx]-a[minx]>k) minx++;
else maxx++;
}
for(int i=minx+1;i<=n;i++)
if(a[n]-a[i]==k) ans=(ans+pow2[maxx-minx-1])%mod;
cout<<ans<<endl;
return 0;
}