独自のクラスの配列やvector
などをstd::sort
でソートする場合、bool operator<
を定義することになる。
このオペレータは、x
とy
が同順位の場合には、false
を返さなくてはならない(<=
ではなくて<
なので)。
x<y
とy<x
の両方が真となり得るような実装だと、異常終了する場合があるぽい。
同順位だから別にどっちでも良いやろ、と適当な考えでいたら、
ABC183 Dでこれにはまって悔しい思いをした。
謎のRun Time Errorでコンテスト終了までにデバッグできず・・