시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 64 MB119423637.895%

문제

Have you ever dreamt that you were the main character in a computer game? The protagonist of this story, Branimir, is having that dream right now.

The world in Branimir’s dream consists of N skyscrapers ordered from left to right. For the i th skyscraper, we know the height Hi and the number of gold coins Gi on the roof of the skyscraper. The game begins with a jump on any of the skyscrapers and consists of several steps. In each step, Branimir can jump on a skyscraper to the right from the one he’s currently on (it is possible for him to jump over a couple of them too) and if it is not lower than the current one. On each skyscraper roof he’s on, Branimir will collect all the gold coins. Branimir can end the game after any number of steps (zero as well), but he must collect at least K gold coins in order to advance to the next level.

Branimir wants to know the number of different ways for him to play the game in order to advance to the next level. Two games are played in different ways if there is a skyscraper that was visited in one game, and not in the other.

입력

The first line of input contains positive integers N (1 ≤ N ≤ 40) and K (1 ≤ K ≤ 4 · 1010), the numbers from the task.

The i th of the following N lines contains two positive integers, Hi and Gi (1 ≤ Hi, Gi ≤ 109), the numbers from the task.

출력

You must output the number of different ways to play the game from the task.

예제 입력 1

4 6
2 1
6 3
7 2
5 6

예제 출력 1

3

예제 입력 2

2 7
4 6
3 5

예제 출력 2

0

예제 입력 3

4 15
5 5
5 12
6 10
2 1

예제 출력 3

4

힌트

Clarification​ ​of​ ​the​ ​first​ ​test​ ​case: The following three games will take Branimir to the next level (the numbers represent the labels of the skyscrapers he visited): {1, 2, 3}, {1, 4} and {4}.