O. 2-SAT с закреплёнными
То же, что классная задача O, но часть переменных заранее закреплена: сказано, что обязана быть равна . Определите, существует ли набор значений, удовлетворяющий и утверждениям, и закреплениям.
Ничего нового не требуется. Закрепление — это утверждение : единственный способ сделать его истинным — присвоить значение . Добавьте такие утверждения к остальным и решайте ту же задачу.
Что при этом происходит в графе импликаций: появляется ребро из литерала в литерал . Если из и без того был путь в , оба литерала окажутся в одной компоненте, и ответ станет отрицательным — ровно как и требуется.
Противоречивые закрепления, где одна и та же переменная закреплена и в ноль, и в единицу, тоже обрабатываются сами собой.
Формат ввода
Первая строка содержит числа (), () и ().
Далее идут строк по четыре числа , , , — утверждения, затем строк по два числа , — закрепления. Везде и .
Формат вывода
Одно слово: YES или NO.
Примеры
1 0 2 0 0 0 1
NO
2 1 1 0 1 1 1 0 0
YES