시간 제한
메모리 제한
시간 제한
1초
메모리 제한
128 MB
상근이는 집 옆에 나무 울타리를 만들고 있다. 이 울타리는 직사각형 나무판을 땅에 꽂아 만든다.
울타리를 만들다 보니 점점 흥이 났고, 상근이는 처음 세운 계획을 잊은 채 나무판을 마구 꽂았다. 울타리를 완성하고 뿌듯하게 바라보던 상근이는 곧 혼란에 빠졌다. 나무판이 서로 겹쳐 꽂힌 곳도 있었고, 울타리 중간에 구멍까지 있었기 때문이다.

그림에서 굵은 선이 스카이라인이다.
상근이는 아직 울타리를 보고 충격에 빠져 있지만, 완성된 울타리의 모양 자체는 마음에 들었다. 그래서 같은 모양의 울타리를 더 적은 수의 나무판으로 다시 만들려고 한다.
같은 모양의 울타리란 스카이라인이 같은 울타리를 뜻한다.
같은 모양의 울타리가 되도록 하려면 어떤 나무판을 남겨야 하는지 구하는 프로그램을 작성하시오.
첫째 줄에 상근이가 나무 울타리를 만드는 데 사용한 나무판의 개수 N (1 <= N <= 100,000)이 주어진다.
다음 N개 줄에는 각 나무판의 정보 X, W, H가 주어진다. X는 상근이의 집에서부터 떨어진 거리이고, W와 H는 각각 나무판의 너비와 높이이다. 모든 수는 10^9를 넘지 않는다.
나무판은 입력으로 주어진 순서대로 1번부터 N번까지 번호가 붙는다.
첫째 줄에 남아 있는 나무판의 개수 B를 출력한다. 이때 B는 최소여야 한다.
둘째 줄에는 남아 있는 나무판의 번호를 공백으로 구분해 출력한다. 정답이 여러 가지인 경우에는 아무거나 출력해도 된다.