원점에서 실제로 보이는 점
시간 제한1초메모리 제한256 MB
원점과 각 점을 잇는 선분 위에 집합의 다른 점이 없는 단조 비감소 격자점의 개수를 1000000007로 나눈 나머지를 구합니다.
문제
차원 좌표계에 점이 여러 개 놓여 있다. 이 점들은 개의 자연수 으로 나타내며, 가 나타내는 점의 집합 는 다음과 같다.
여기서 은 모두 자연수다.
모든 를 합한 집합을 이라고 하자. 좌표계에 놓인 점은 에 속한 점이 전부다.
원점 에서 보이는 점이 몇 개인지 구하라. 점 가 보인다는 것은 원점과 를 잇는 선분 위에 자신을 뺀 의 점이 하나도 없다는 뜻이다. 선분 위에 있어도 에 속하지 않는 좌표는 시야를 가리지 않는다.
입력
첫째 줄에 자연수 과 이 공백으로 구분되어 주어진다. (, )
둘째 줄부터 개 줄에 걸쳐 자연수 가 한 줄에 하나씩 주어진다. () 는 서로 다르다.
출력
원점에서 보이는 점의 개수를 로 나눈 나머지를 출력한다.
힌트
이고 가 1, 2, 3, 4일 때 의 점은 , , , , , , , , , 이다. 이 가운데 보이는 점은 , , , , , 로 모두 6개다. 는 선분 위의 이 에 있어서 가려지고, 는 에 가려진다.
가 4 하나뿐이면 결과가 달라진다. 는 , , , 뿐이고 를 가릴 가 에 없으므로 네 점이 모두 보인다.