Sejam $$a[i],b[i]$$ os vetores que representam o horário mínimo e máximo de chegada do aluno $$i$$, respectivamente, criamos um vetor $$v[i]$$, onde $$v[j] =$$ quantidade de aluno que podem chegar na casa de João no horário $$j$$, a partir dessa ideia, basta achar o máximo entre $$v[j], 1 \leq j \leq 100000$$, mas para achar esta quantidade basta percorrer para todos os $$i$$, e adicionar 1 em $$v[j]$$ para $$a[i] \leq j \leq b[i]$$, pois encontramos um aluno que pode chegar no horário $$v[j]$$. Segue o código:
https://gist.github.com/Thiago4532/0d5d5e90e85bbf76154508f1ba8acf9f

Deixe um comentário