재미있는 박스 정리

상자 N개의 크기가 주어질 때, 바깥 상자의 크기가 안쪽 상자의 두 배 이상이면 넣을 수 있고 한 상자에는 하나만 넣을 수 있다. 보이는 상자 수의 최솟값을 구한다.

보통6그리디정렬투 포인터이분 탐색면접 대비아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

민호는 박스 N개를 가지고 있다. 박스가 너무 많아져 정리하고 싶어졌는데, 평범한 정리는 지루하다고 생각해 재미를 위해 다음 두 규칙을 정했다.

  1. 박스 x의 크기를 VxV_x, 박스 y의 크기를 VyV_y라고 할 때, Vy2VxV_y \ge 2 V_x이면 박스 x를 박스 y 안에 넣을 수 있다.
  2. 박스 x를 박스 y에 넣었다면 박스 y는 다른 박스에 넣지 못한다. 한 박스 안에 들어가는 박스는 많아야 한 개이다.

다른 박스 안에 들어가지 않은 박스만 눈에 보인다. 규칙을 지켜 정리했을 때 눈에 보이는 박스의 개수를 최소로 만들려고 한다. 그 최솟값을 구하라.

입력

첫째 줄에 민호가 가지고 있는 박스의 개수 N (1N5000001 \le N \le 500\,000)이 주어진다.

둘째 줄부터 N개의 줄에 걸쳐 박스의 크기 V (1V1000001 \le V \le 100\,000)가 한 줄에 하나씩 주어진다.

출력

규칙을 지켜 정리했을 때 눈에 보이는 박스 개수의 최솟값을 한 줄에 출력한다.