Олимпиадный тренинг

Задача . F. Легкая демоническая задача


Для произвольной матрицы Robot определяет её красоту как сумму элементов в матрице.

Robot дает вам массив \(a\) длиной \(n\) и массив \(b\) длиной \(m\). Вы строите матрицу \(n\) на \(m\) \(M\), такую что \(M_{i,j}=a_i\cdot b_j\) для всех \(1 \leq i \leq n\) и \(1 \leq j \leq m\).

Затем Robot дает вам \(q\) запросов, каждый из которых состоит из одного целого числа \(x\). Для каждого запроса определите, возможно ли выполнить следующую операцию ровно один раз так, чтобы \(M\) имела красоту \(x\):

  1. Выберите целые числа \(r\) и \(c\) такие, что \(1 \leq r \leq n\) и \(1 \leq c \leq m\).
  2. Установите \(M_{i,j}\) в \(0\) для всех упорядоченных пар \((i,j)\) таких, что \(i=r\), \(j=c\) или оба.

Обратите внимание, что запросы не являются постоянными, что означает, что вы на самом деле не устанавливаете никакие элементы в \(0\) в процессе — вам только нужно вывести, возможно ли найти \(r\) и \(c\) так, чтобы, если вышеуказанная операция будет выполнена, красота матрицы будет равна \(x\). Также обратите внимание, что вы должны выполнять операцию для каждого запроса, даже если красота исходной матрицыуже равна \(x\).

Входные данные

Первая строка содержит три целых числа \(n\), \(m\) и \(q\) (\(1 \leq n,m \leq 2\cdot 10^5, 1 \leq q \leq 5\cdot 10^4\)) — длина \(a\), длина \(b\) и количество запросов соответственно.

Вторая строка содержит \(n\) целых чисел \(a_1, a_2, \ldots, a_n\) (\(0 \leq |a_i| \leq n\)).

Третья строка содержит \(m\) целых чисел \(b_1, b_2, \ldots, b_m\) (\(0 \leq |b_i| \leq m\)).

Следующие \(q\) строк каждая содержит одно целое число \(x\) (\(1 \leq |x| \leq 2\cdot 10^5\)), красота матрицы, которую вы хотите достичь, установив все элементы в строке и столбце в \(0\).

Выходные данные

Для каждого набора входных данных выведите «YES» (без кавычек), если существует способ выполнить вышеупомянутую операцию так, чтобы красота была равна \(x\), и «NO» (без кавычек) в противном случае.

Вы можете выводить «YES» и «NO» в любом регистре (например, строки «yES», «yes» и «Yes» будут распознаны как положительный ответ).

Примечание

Во втором примере матрица выглядит следующим образом:

0 -2 5 0 -3

0 4 -10 0 6

0 -6 15 0 -9

0 0 0 0 0

0 0 0 0 0

Выполнив операцию с \(r=4\) и \(c=2\), получим матрицу:

0 0 5 0 -3

0 0 -10 0 6

0 0 15 0 -9

0 0 0 0 0

0 0 0 0 0

которая имеет красоту \(4\). Таким образом, мы выводим YES.

В втором запросе, выбирая \(r=3\) и \(c=5\), получается матрица с красотой \(-3\).

В третьем запросе, выбирая \(r=3\) и \(c=3\), получается матрица с красотой \(5\).


Примеры
Входные данныеВыходные данные
1 3 3 6
-2 3 -3
-2 2 -1
-1
1
-2
2
-3
3
NO
YES
NO
NO
YES
NO
2 5 5 6
1 -2 3 0 0
0 -2 5 0 -3
4
-3
5
2
-1
2
YES
YES
YES
YES
NO
YES

time 4000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w643
Комментарий учителя