问题
길이가 L 인 도로와 N 명의 사람이 있다. i = 1, 2, ... , N 일 때 i 번째 사람은 Ti 시각에 길의 시작지점을 출발하여 Vi 라는 일정한 속도로 길의 끝 지점을 향하여 걸어간다. 어떠한 두 사람도 같은 시각에 출발하지 않으며, 어떠한 두 사람도 같은 시각에 끝 지점에 도착하지 않는다.
i 번째 사람과 j 번째 사람이 길에서 만나게 되면 두 사람은 친구가 된다. 수학적으로 두 사람의 출발 시각이 Ti < Tj 이고 L / Vi + Ti > L / Vj + Tj 이면 “두 사람은 친구가 된다.” 라고 한다.
여러분이 해야 할 일은 서로 서로가 친구가 되는 여러 집합들 중에서 구성원의 수가 최대인 집합의 구성원 수를 구하는 프로그램을 작성하는 것이다.
예 1> L = 1000 이고 4명의 사람이 있는데 T1 = 0, T2 = 1, T3 = 2, T4 = 4 이고 V<1 = 2, V2 = 3, V3 = 1, V4 = 4 라고 하자.
여기서 첫 번째 사람과 두 번째 사람은 0 < 1 이고 1000 / 2 + 0 > 1000/3 + 1 이므로 친구가 된다. 이렇게 모든 사람 사이에 대하여 계산하면 아래와 같은 표를 얻을 수 있다.

따라서 첫 번째, 두 번째, 네 번째 사람은 서로 서로 친구가 되고 구성원의 수가 3으로서 최대가 된다. 세 번째, 네 번째 사람도 친구가 되지만 구성원의 수가 2 이므로 최대가 될 수 없다.
예 1> 또 다른 경우를 보자. L = 1000 이고 4명의 사람이 있으며 T1 = 0, T2 = 1, T3 = 2, T4 = 4 이고 V1 = 1, V2 = 1, V3 = 1, V4 = 1 라고 하자. 이 경우에는 어느 두 사람도 만나지 않는다. 따라서 구하고자 하는 값은 1이 된다.
输入
첫 행에 도로의 길이 L ( 100≤L≤10,000) 과 사람 수 N ( 1≤N≤500) 이 주어진다.
다음 행부터 N 개의 행에 각 사람에 대한 정보 Ti ( 0≤Ti≤1,000) 와 Vi ( 1≤Vi≤100) 이 공백으로 구분되어 주어진다.
<제약조건>
- 입력의 20% 는 사람 수가 40 이하이고 구성원의 수가 최대인 집합의 구성원 수가 6이하이다.
- 입력의 40% 는 사람 수가 150 이하이고 구성원의 수가 최대인 집합의 구성원 수가 12이하이다.
输出
서로 서로가 친구가 되는 여러 집합들 중에서 구성원의 수가 최대인 집합의 구성원 수를 출력하시오.
示例 #1
1000 4
1 3
2 1
0 2
3 4
3
示例 #2
1000 4
0 1
2 1
1 1
3 1
1