Задача
Для заданного целого числа $n$ вывести YES, если выполняется ровно одно из следующих условий и NO в противном случае.
- число $n$ четное.
- число $n$ отрицательное и кратное трем.
Входные данные
Одно целое число $n$.
Выходные данные
Вывести YES или NO в зависимости от выполнения условий.
Тесты
ВВОД | ВЫВОД |
22 | YES |
7 | NO |
-30 | NO |
-9 | YES |
0 | YES |
Код
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
import java.util.*; import java.lang.*; class Main { public static void main (String[] args) { int n; Scanner in = new Scanner(System.in); n = in.nextInt(); System.out.println((n%2 == 0) == (n%3 == 0 & n<0)? "NO": "YES"); } } |
Решение
Если оба условия выполняются или оба не выполняются, то нужно вывести «NO», а иначе — «YES».
- В первом случае проверяем четность числа $n$.
- Во втором случае проверяем кратность трем и является ли $n$ отрицательным.
- В обеих случаях исключаем варианты, когда оба условия могли бы выполнятся, то есть исключаем отрицательные числа и кратность трем для первого, и четность числа для второго случая.