균형 잡힌 등급
시간 제한1초메모리 제한1024 MB
점들을 지배 관계로 정렬해 세 개의 비어 있지 않은 등급으로 나누고, 등급 인원의 최댓값과 최솟값 차이를 최소화한다.
문제
서울과학고의 자료구조 수업은 명의 학생이 수강한다. 자료구조 수업은 중간고사와 기말고사가 존재하며, 각 시험의 점수는 이상 이하의 정수이다.
선생님은 학생들의 시험 점수를 바탕으로 학생들에게 '상', '중', '하' 중 하나의 등급을 부여하려고 한다. 이때 부여하는 등급은 다음 두 조건에 맞아야 한다.
- 각 등급은 적어도 한 명의 학생이 받아야 한다.
- 더 높은 등급을 받은 학생은 더 낮은 등급을 받은 학생보다 중간고사, 기말고사 점수가 모두 더 높아야 한다.
선생님은 불균형도를 최소화하도록 등급을 매기고자 한다. '상', '중', '하' 등급을 받은 사람의 수를 각각 , , 라고 하자. 이때 불균형도는 로 정의된다.
가능한 불균형도의 최솟값을 구하여라.
입력
첫 줄에 학생의 수 이 주어진다.
그 뒤 개의 줄이 주어진다. 이들 중 번째 줄에는 번 학생의 중간고사와 기말고사 점수 와 가 띄어쓰기를 사이에 두고 주어진다.
출력
가능한 불균형도의 최솟값을 출력한다.
만약 선생님이 조건에 맞게 등급을 부여하는 것이 불가능하다면, -1을 출력한다.
제한
- 입력에 주어지는 모든 수는 정수이다.
힌트
와 는 각각 , , 중 최댓값과 최솟값을 의미한다.