弱弱求救!!!

P1610 鸿山洞的灯

@[telankesi](/user/866969) 你可以参考一下第一篇题解 ![](//图.tk/e)
by Loser_Syx @ 2023-01-28 08:50:49


@[Saint_ying_xtf](/user/852144) 我这没错吧,我看了题解了,还是不知道我这咋错了
by telankesi @ 2023-01-28 08:59:21


@[telankesi](/user/866969) AC了,码风可能不太好看 ```cpp #include<iostream> #include<algorithm> using namespace std; int n, d; int p[100010]; int ans = 0; int main() { scanf("%d %d", &n, &d); for (int i = 1; i <= n; i++) { scanf("%d", &p[i]); } sort(p + 1, p + 1 + n); int now = 0; for (int i = 1; i <= n-2; i++) { now = i + 2; if (p[now] - p[i] <= d) { ans++; p[i + 1] = p[i]; } } printf("%d", ans); return 0; } ```
by Loser_Syx @ 2023-01-28 09:09:34


@[Saint_ying_xtf](/user/852144) 感谢佬,可以说一下这个是为什么吗? ```c p[i + 1] = p[i]; ```
by telankesi @ 2023-01-28 09:47:25


@[telankesi](/user/866969) 让前面的一盏灯替代删除的灯,不然后面会重复计算
by Loser_Syx @ 2023-01-28 09:49:25


@[Saint_ying_xtf](/user/852144) 怎么重复了?我这个代码不就是每个检查一次??那里重复了?
by telankesi @ 2023-01-28 10:33:10


@[telankesi](/user/866969) 你的那盏灯已经被删除了,如果不删除,之后的一盏灯还会去和那盏删除的灯去比,你感觉能比吗?
by Loser_Syx @ 2023-01-28 10:36:00


|