수열과 쿼리 32
시간 제한10초메모리 제한512 MB
점 갱신이 있는 수열에서 각 구간의 xor이 주어진 작은 집합에 속하도록 전체를 분할할 수 있는지 판정한다.
문제
길이가 인 수열 이 주어진다. 이때, 다음 쿼리를 수행하는 프로그램을 작성하시오.
-
1 x v: 를 로 바꾼다. -
2 k b1 ... bk: 수열 를 다음 조건을 만족하는 구간으로 나눌 수 있으면 "TAK", 아니면 "NIE"를 출력한다.- 각각의 수는 하나의 구간에 포함되어 있어야 한다.
- 구간은 겹칠 수 없다.
- 각 구간에 들어있는 모든 수를 xor한 결과는 중 하나와 같아야 한다.
입력
첫째 줄에 수열의 크기 이 주어진다. ()
둘째 줄에는 이 주어진다. ()
셋째 줄에는 쿼리의 개수 이 주어진다. ()
넷째 줄부터 개의 줄에는 쿼리가 한 줄에 하나씩 주어진다. (, , )
1번 쿼리의 개수는 400,000개를 넘지 않으며, 2번 쿼리에서 주어진 의 합은 100,000개를 넘지 않는다.
출력
2번 쿼리의 결과를 출력한다.