Вы наверняка знаете, что при решении задач (особенно на олимпиадах по программированию) нужно выбирать целочисленные типы данных с умом. Если используемый тип имеет слишком малый размер, при выполнении арифметических операций может произойти переполнение, и тогда результат вычислений окажется неверным.
Макс решает задачу, в которой требуется определить произведение целых чисел A и B. Любимый язык Макса — C++, а в этом языке самым ёмким целочисленным типом является long long — на компьютере Макса это 64-битное целое со знаком. 1 бит отводится на хранение знака числа, остальные 63 — на хранение самого числа; таким образом, максимальное значение, которое может иметь переменная типа long long, равно (263 - 1).
В своём решении Макс использовал long long везде, где только мог — для хранения чисел A, B и их произведения. Определите, действительно ли это поможет ему избежать переполнения.
Ввод содержит целые числа A и B (0 ≤ A, B ≤ (263 - 1)).
Выведите YES, если при вычислении произведения (A·B) произойдёт переполнение типа long long. В противном случае выведите NO.
1000000000 1000000000
NO
10000000000 10000000000
YES
| Название |
|---|


