运算符重载神秘常数(?
  • 板块P4148 简单题
  • 楼主HRcohc
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/5/29 19:46
  • 上次更新2024/5/29 21:57:38
查看原帖
运算符重载神秘常数(?
548732
HRcohc楼主2024/5/29 19:46

针对 nthnth_elementelement 函数,如果用被注释掉的运算符重载就会 TLETLE 成 20pts20pts,用结构体下面的比较函数就可以 ACAC

怎么会是呢,有没有大佬救一救 QAQQAQ

int cur;
struct Node{
	int x[K];
	int val, sum, lc, rc;
	int mn[K], mx[K];
//	bool operator > (const Node &y)const{
//		return x[cur] < y.x[cur];
//	}
}l, h, t[N];
bool cmp(int x, int y){return t[x].x[cur] < t[y].x[cur];}

buildbuild 部分参照的是 OI−WikiOI-Wiki:

int build(int l, int r, int d = 0){
	cur = d;
	int mid = (l + r) >> 1;
	nth_element(id + l, id + mid, id + r + 1, cmp);
	int now = id[mid];
	if(l < mid) t[now].lc = build(l, mid - 1, d ^ 1);
	if(mid < r) t[now].rc = build(mid + 1, r, d ^ 1);
	pushup(now);
	return now;
}
2024/5/29 19:46
加载中...