만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

다각형

시간 제한10초메모리 제한1024 MB

요약
X×Y 격자 안에서 변 위에 격자점이 없고 길이가 정수이며 K 이하인 볼록 다각형의 개수를 2^32로 나눈 나머지를 구합니다.
난이도

어려움10점 중 9점

유형
정수론, 기하, 조합론, 동적 계획법
정답자
아직 제출이 없습니다

문제

우리는 이미 지쳤고 흥미로운 이야기가 있는 문제를 떠올리지 못했다. 그래서 과제는 단순하다. 짧은 정수 변을 가지고 추가 격자점이 없는 볼록 다각형의 개수를 세면 된다. 꼭짓점을 (xi,yi)(x_i, y_i)라 할 때 다음 조건을 모두 만족해야 한다.

  • 1≤xi≤X1 \le x_i \le X, 1≤yi≤Y1 \le y_i \le Y
  • 꼭짓점은 격자점이다. 즉 xix_i와 yiy_i는 정수다.
  • 어떤 변 위에도 꼭짓점이 아닌 격자점이 없다.
  • 각 변의 길이는 KK 이하의 정수다.
  • 다각형은 볼록하고 단순하며 퇴화되지 않았다. 모든 내각은 180도보다 작고, 변끼리 교차하지 않으며, 꼭짓점은 최소 세 개다. 또한 세 꼭짓점이 한 직선 위에 있지 않다.

아래 그림은 올바르지 않은 다각형의 예다. 첫 번째와 두 번째 다각형은 변 위에 격자점이 있다. 두 번째와 세 번째 다각형은 볼록하지 않다. 첫 번째와 세 번째 다각형은 변의 길이가 정수가 아니다.

입력

첫 번째이자 유일한 줄에 정수 XX, YY, KK가 주어진다(1≤X,Y≤1091 \le X, Y \le 10^9, 1≤K≤2501 \le K \le 250). 각각 좌표의 상한과 변 길이의 상한이다.

테스트 데이터는 다음 부분 문제 중 하나 이상에 속한다. 예를 들어 X=Y=K=233X = Y = K = 233인 테스트는 어느 부분 문제에도 속하지 않으므로 존재하지 않는다.

  • K≤15K \le 15
  • X,Y≤150X, Y \le 150
  • 2000≤X,Y≤24002000 \le X, Y \le 2400, K≤100K \le 100
  • XX와 YY가 10610^6으로 나누어떨어진다

출력

조건을 만족하는 다각형의 개수를 2322^{32}로 나눈 나머지를 출력한다. 한쪽 다각형에만 꼭짓점인 점이 있으면 두 다각형은 서로 다른 것으로 본다.

힌트

예제 설명이다. X=6X = 6, Y=5Y = 5, K=5K = 5이다. 올바른 다각형 42개 중 하나는 꼭짓점이 (2,1),(2,2),(6,5),(3,1)(2, 1), (2, 2), (6, 5), (3, 1)이며, 아래 그림에 나와 있다.

예제1

  1. 예제 1

    입력
    6 5 5
    
    예상 출력
    42