0
已解决
e的x次幂
高级守护
高级守护
题意简化版:
给定长度为 N 的子序列 A,维护两个不相交的子序列 a, b,使得 max{a} - min{a}, max{b} - min{b} 均 <= k
求出 max{|a| + |b|}
my 30pts WA code:
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
const int N = 1e6 + 1;
int n, k, d[N], a[N], cnt;
int main() {
scanf("%d%d", &n, &k);
for(int i = 1; i <= n; i ++)
scanf("%d", &d[i]);
sort(d+1, d+1+n);
for(int i = 1, last_min = -1e9-1; i <= n; i ++) {
if(d[i] - last_min <= k)
a[cnt] ++;
else {
last_min = d[i];
a[++ cnt] = 1;
}
}
sort(a+1, a+1+cnt, greater<int>());
printf("%d", a[1] + a[2]);
return 0;
}
e的x次幂在2021-11-11 20:10:31追加了内容
d
e的x次幂在2021-11-12 18:42:32追加了内容
@侯平仄
e的x次幂在2021-11-13 10:00:19追加了内容
d