Bedao Regular Contest 15 - BITTEST

Xem dạng PDF

Gửi bài giải


Điểm: 0,60 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Trong thiết kế hệ thống, kiểm thử là một giai đoạn vô cùng quan trọng. ~\textbf{Quân}~ đang thiết kế một máy theo nguyên lí máy Turing, tức là thực hiện các thao tác trên một băng ghi bộ nhớ; và máy của anh đang trong giai đoạn kiểm thử.

Băng ghi bộ nhớ của ~\textbf{Quân}~ có thể coi là một dãy ~n~ bit được đánh số từ ~1~ đến ~n~. Từ trái sang phải, mỗi bit ban đầu có một trạng thái xác định. Để kiểm tra máy, người ta lần lượt thực hiện các truy vấn thuộc trong hai loại:

+ ~1~ ~l~ ~r~: Chuyển trạng thái các bit từ bit thứ ~l~ đến bit thứ ~r~ (~0~ thành ~1~ và ~1~ thành ~0~).

+ ~2~ ~x~ ~y~ ~z~ ~t~: Kiểm tra xem hai dãy nhị phân con từ ~x~ đến ~y~ và từ ~z~ đến ~t~ có giống nhau không?

Yêu cầu: Bạn hãy giúp ~\textbf{Quân}~ kiểm tra máy của anh bằng cách trả lời các truy vấn loại ~2~ nhé!

Input

Dòng đầu tiên chứa xâu nhị phân ~S~ ~(|S| \le 10^{5})~ mô tả trạng thái băng nhớ ban đầu.

Dòng thứ hai chứa số nguyên dương ~q~ ~( 1 \le q \le 10^{5})~ là số truy vấn.

~q~ dòng tiếp theo mỗi dòng thuộc một trong hai dạng:

  • ~1~ ~l~ ~r~ : ~(1 \le l \le r \le |S|)~ .

  • ~2~ ~x~ ~y~ ~z~ ~t~ :~(1 \le x \le y \le |S| ,1 \le z \le t \le |S|)~

Output

  • In ra nhiều dòng theo thứ tự là đáp án của truy vấn loại ~\textbf{2}~ tương ứng:

  • Nếu hai dãy là giống nhau, in ra "YES", ngược lại in ra "NO".

Scoring

  • Subtask ~1~ (~15~ điểm): ~1 \le |S| , q \le 1000~.

  • Subtask ~2~ (~25~ điểm): Các truy vấn loại ~1~ xảy ra trước loại ~2~.

  • Subtask ~3~ (~60~ điểm): Không có điều kiện gì thêm.

Sample Input 1

01101011
5
1 3 4
2 2 3 5 6
1 1 8
2 1 5 2 7
2 1 2 7 8

Sample Output 1

YES
NO
NO

Notes

  • Sau truy vấn thứ nhất, xâu ~S~ trở thành ~01011011~.

  • Trong truy vấn thứ hai, dãy con từ ~2~ đến ~3~ bằng ~10~, dãy con từ ~5~ đến ~6~ bằng ~10~.

  • Sau truy vấn thứ ba, xâu ~S~ trở thành ~10100100~

  • Trong truy vấn thứ tư, dãy con từ ~1~ đến ~5~ bằng ~10100~, dãy con từ ~2~ đến ~7~ bằng ~0100100~.


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.