条件 | コード |
---|---|
xより大きい | v.end() - upper_bound(v.begin(), v.end(), x) |
x以上 | v.end() - lower_bound(v.begin(), v.end(), x) |
xである | upper_bound(v.begin(), v.end(), x) - lower_bound(v.begin(), v.end(), x) |
x以下 | upper_bound(v.begin(), v.end(), x) - v.begin() |
x未満 | lower_bound(v.begin(), v.end(), x) - v.begin() |
書いておいてなんですが、「xより小さい」個数と「ちょうどxである」個数が求まれば、引き算と足し算で残りは求められるので表にするほどではないですね。