11870. Шляхи


Відправити розв'язок

Бали: 100
Time limit: 1.0s
Memory limit: 500M

Author:
Problem type
Allowed languages
C++, Java, Pascal, Python

Степан знаходиться в початку двовимірної площини. Степан повторить телепортацію \(N\) разів. Під час кожної телепортації він робить один із таких рухів:

  • Перехід від поточних координат (\(x,y\)) до (\(x+A,y+B\))

  • Перехід від поточних координат (\(x,y\)) до (\(x+C,y+D\))

  • Перехід від поточних координат (\(x,y\)) до (\(x+E,y+F\))

На \(M\) точках (\(X_1,Y_1),\ldots,(X_M,Y_M\)) є перешкоди; він не може телепортуватися до цих координат.

Скільки шляхів є результатом \(N\) телепортацій? Знайдіть число за модулем 998244353.

Обмеження

  • \(1 \leq N \leq 300\)
  • \(0 \leq M \leq 10^5\)
  • \(-10^9 \leq A,B,C,D,E,F \leq 10^9\)
  • \((A,B), (C,D)\) і \((E,F)\) різні.
  • \(-10^9 \leq X_i,Y_i \leq 10^9\)
  • \((X_i,Y_i)\neq(0,0)\)
  • \((X_i,Y_i)\) відрізняються.
  • Усі значення у вхідних даних є цілими числами.

Формат вхідних даних

Перший рядок містить цілі числа \(N,M\)

Наступний  рядок містить цілі числа \(A,B,C,D,E,F\)

Наступні  \(M\) рядків містять цілі числа \(X_i, Y_i\)

Числа у рядках розділяються пропуском.

Формат вихідних даних

У вихідний потік виведіть відповідь.

Примітка

До прикладу 1:

  • (0,0)→(1,1)→(2,3)
  • (0,0)→(1,1)→(2,4)
  • (0,0)→(1,3)→(2,4)
  • (0,0)→(1,3)→(2,5)
  • (0,0)→(1,3)→(2,6)

Приклад вхідних даних

2 2
1 1 1 2 1 3
1 2
2 2

Приклад вихідних даних

5

Приклад вхідних даних

10 3
-1000000000 -1000000000 1000000000 1000000000 -1000000000 1000000000
-1000000000 -1000000000
1000000000 1000000000
-1000000000 1000000000

Приклад вихідних даних

0

Приклад вхідних даних

300 0
0 0 1 0 0 1

Приклад вихідних даних

292172978

Коментарі

Ще немає коментарів.