std::set
에 범위의 요소가 포함되어 있는지 확인해야합니다. 예를 들어 집합이 set<int>
{1, 2, 4, 7, 8}
이고 int
간격이 [3, 5]
(양쪽 끝점 포함) 인 경우 집합에 요소가 있는지 알아야합니다. 이 경우 true를 반환합니다. 그러나 간격이 [5, 6]
이면 false를 반환합니다. 간격은 [4, 4]
일 수 있지만 [5, 3]
이 아닐 수 있습니다.C++에서 특정 세트의 요소에 특정 범위의 요소가 있는지 확인하는 방법
나는 set::lower_bound
을 사용할 수있는 것처럼 보이지만 이것이 올바른 접근법인지는 확실하지 않습니다. 나는 또한 복잡성을 가능한 한 낮게 유지하기를 원한다. lower_bound
을 사용하면 로그가 정확하다고 생각합니까?