だいたい競プロこの広告は、90日以上更新していないブログに表示しています。excludeに由来)と呼ばれている。Wikipedia区間に対するmexを求める問題を見かけたので備忘録として書いておく。問題はじめ、集合Sは空集合であるとする。Q個のクエリが与えられ、各クエリは以下の3つの形式のいずれかである。r]である整数xのうち、集合Sに含まれない最小のxを出力する与えられたQ個のクエリを順に処理せよ。r]である整数のうち集合Sに含まれないものが必ず存在する。query)で解ける。asi1024さんよると、区間を管理するsetとsetのlower_boundでも同様に解けるそうです。持つ配列を作り、ソートして重複を取り除く。あとはこのsegment木を元に以下のようにクエリを処理すればよい。excludeの場合はminをmaxに、INFを-INFにすればよい。right]みたいなクエリも簡単に対応可能。