Obtenga el número de elementos en una matriz ordenada que se encuentran dentro de un cierto rango en el tiempo de registro (n)

Digamos que tengo una matriz de la siguiente clase ordenada en orden ascendente por y:

public class Obj {
    public int x;
    public int y;
}

¿Cómo puedo encontrar el número de elementos Obj en la matriz que tienen valores y dentro del rango mínimo y máximo dado en el tiempo de registro (N)?

He pensado en usar la búsqueda binaria para encontrar las ubicaciones de los elementos mínimo y máximo con la búsqueda y sustracción binarias, pero ¿no sería eso 2 log (n) ya que está buscando dos veces?

public static int getNumberOfItems(Obj[] a, int min, int max) {

Respuestas a la pregunta(3)

Su respuesta a la pregunta