중간고사를 준비 중인 김한양은 원교수님께서 내주신 수많은 과제 때문에 절망했다. 터덜터덜 집에 가던 김한양은 마침 집앞에서 과제를 자동으로 해결해주는 로봇 '과제봇'을 판매하는 과제봇 상인을 만났다. 과제봇을 알게 된 김한양은 직접 과제를 해결하지 않고 과제봇을 구매하여 이용하기로 마음 먹었다.
과제봇 상인은 매일 김한양의 집 앞에서 과제봇을 판매한다. 하지만 과제봇은 너무 비싸서 가난한 대학생인 김한양은 하루에 최대 하나의 과제봇만 구매할 수 있다. 과제봇은 구매한 당일 바로 작동시켜야 하며, 각각의 과제봇은 사용자가 지정한 하나의 과제만을 수행할 수 있다. 과제봇이 과제를 완전히 해결한 시점에 해당 과제에 할당된 포인트가 지급된다.
과제마다 정해진 마감일과 해결하는 데 걸리는 시간, 그리고 과제를 해결했을 때 얻는 포인트가 모두 달라서 모든 과제를 수행하지 못할 수도 있다. 다행히 자비로우신 원교수님께서는 얻은 포인트의 총합이 공지된 커트라인 이상이면 재수강을 면할 수 있도록 해주셨다. 따라서 김한양은 재수강을 면할 수 있을 정도로만 과제를 해결하려 한다. 수많은 과제들을 보고 무기력해진 김한양을 위해 커트라인을 넘기는 데에 과제봇이 최소 몇 개가 필요한지 구해주자.
첫째 줄에 과제의 개수 $N\ (1 \leq N \leq 200\,000)$과 원교수님께서 공지하신 커트라인 $C\ (N \leq C \leq N \times 40)$가 주어진다.
다음 줄부터 $N+1$번째 줄까지 각 과제의 마감일 $d\ (1 \leq d \leq N)$와 과제 해결에 걸리는 기간 $t\ (1 \leq t \leq d)$, 그리고 과제를 해결했을 때 얻는 포인트 $p\ (1 \leq p \leq 100)$가 공백으로 구분되어 주어진다.
예를 들어 $t=3$이라면 과제봇이 해당 과제를 해결하는 데에 $3$일이 소요된다.
또한, $d=3$, $t=2$인 과제를 완료하기 위해서는 적어도 $2$일차에는 과제봇을 작동시켜야 한다. ($2$일, $3$일 이틀간 작동 후 $3$일차에 과제 완료)
커트라인을 넘길 수 있는 방법이 존재한다면 김한양이 사용할 수 있는 과제봇의 최소 개수를 출력한다.
만약 얻을 수 있는 포인트의 최댓값보다 커트라인이 더 높다면 I'm sorry professor Won!을 출력한다.