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
Автор Євген Служаєв