더 어려운 충족 가능성
시간 제한3초메모리 제한512 MB
- 난이도
아직 분류되지 않았습니다
- 정답자
- 아직 제출이 없습니다
문제
완전 한정 불리언 2-CNF 식은 형태이다. 각 는 전칭 한정자 (모든) 또는 존재 한정자 (존재한다) 중 하나이다. 는 개의 절 의 논리곱()이다. 와 는 부정이 붙거나 붙지 않은 변수이며, 같은 변수일 수도 있다. 이 식에는 자유 변수가 없으므로 참 또는 거짓으로 평가된다.
다음 재귀 알고리즘으로 식을 평가할 수 있다.
- 한정자가 없으면 나머지 식의 값(참 또는 거짓)을 반환한다.
- 그렇지 않으면 에 대해 을 재귀적으로 평가한다.
- 이면 을 반환한다. 이면 을 반환한다.
주어진 완전 한정 2-CNF 식들이 참인지 판정하라.
입력
첫 줄에 테스트 케이스의 수 ()가 주어진다. 각 테스트 케이스의 첫 줄에는 변수의 수 과 절의 수 ()이 주어진다. 다음 줄에는 한정자를 나타내는 길이 의 문자열 가 주어진다. 가 A이면 는 이고, E이면 는 이다.
이어지는 개의 줄에는 각각 두 정수 , (, )가 주어진다. 이면 절의 첫 번째 변수는 이다. 이면 첫 번째 변수는 의 부정이다. 두 번째 변수도 로 같은 방식으로 나타낸다.
모든 테스트 케이스의 합은 을 넘지 않으며, 합도 을 넘지 않는다.
출력
각 테스트 케이스마다 식이 참이면 TRUE, 거짓이면 FALSE를 출력한다.
힌트
첫 번째 예제는 식 에 해당한다. 임의의 에 대해 로 고르면 식이 참이 되므로 식은 참이다. 두 번째 예제는 한정자의 순서를 바꾼 것이다. 이제 답은 FALSE이다. 임의의 에 대해 로 고르면 식이 거짓이 되기 때문이다. 세 번째 식은 이다. , 을 대입하면 의 어떤 값으로도 두 번째 절을 참으로 만들 수 없으므로 식은 거짓이다.