eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Квадратное уравнение 1

Квадратное уравнение 1

Задано квадратное уравнение \textbf{ax^2 + bx + c ≡ 0 (mod p)}, где \textbf{a} > \textbf{0} и \textbf{p} -- нечетное простое число. Ваша задача выяснить, имеет ли оно решение в целых числах. \InputFile В первой строке входного файла задано количество тестов \textbf{t} (\textbf{1} ≤ \textbf{t} ≤ \textbf{100000}). Каждый тест состоит из одной строки, содержащей четыре целых числа \textbf{a}, \textbf{b}, \textbf{c}, \textbf{p}, разделенных одним пробелом (\textbf{3} ≤ \textbf{p} ≤ \textbf{2·10^9}, \textbf{0} < \textbf{a} ≤ \textbf{p--1}, \textbf{0} ≤ \textbf{b}, \textbf{c} ≤ \textbf{p--1}). Гарантируется, что входные данные удовлетворяют описанным в условии задачи ограничениям. \OutputFile Для каждого теста выведите строку, содержащую "\textbf{YES}" если уравнение имеет решение, и "\textbf{NO}" в противном случае.
Лимит времени 2 секунды
Лимит использования памяти 64 MiB
Входные данные #1
3
1 2 1 7
1 3 1 7
1 3 1 11
Выходные данные #1
YES
NO
YES
Автор Евгений Служаев