社区讨论
求助cmp函数导致的神秘RE
学术版参与者 5已保存回复 7
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 7 条
- 当前快照
- 1 份
- 快照标识符
- @mhj26f7v
- 此快照首次捕获于
- 2025/11/03 19:30 4 个月前
- 此快照最后确认于
- 2025/11/03 19:30 4 个月前
CPP
struct node {
double a, b;
} p[maxn];
bool cmp(node x, node y) {
if (x.b == -1) {
return y.b == x.b ? x.a < y.a : y.b > x.b;
}
if (y.b == -1) {
return x.b == y.b ? x.a < y.a : x.b > y.b;
}
return x.b == y.b ? x.a < y.a : x.b < y.b;
}
原题为8162,这个排序函数会导致神秘RE?改了以后就能过掉。
能过得排序函数:
CPPbool cmp(node x, node y) {
if (x.b != -1 && y.b != -1) {
if (x.b == y.b) {
return x.a < y.a;
}
return x.b < y.b;
} else if (x.b == -1 && y.b == -1) {
return x.a < y.a;
} else {
return x.b > y.b;
}
}
回复
共 7 条回复,欢迎继续交流。
正在加载回复...