我堆优化是用结构体+重载运算符,一开始重载的是大于号然后 STL 报错了,结果我发现优先队列里面是用小于号做比较的(虽然他默认是大根堆)
所以正确的写法应该是
bool operator < (const data &a,const data &b){return a.y>b.y;}
如果考试的时候出现了奇怪的错误(比如这个重载大于号小于号的问题),要稳住心态,尝试换种方法