PALINZ - Truy vấn xâu đối xứng

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

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

Cho xâu ~S~ có độ dài ~n~ chỉ gồm các kí tự ~0~ hoặc ~1~. Cho ~m~ truy vấn có dạng ~L\ R~, với mỗi truy vấn, kiểm tra xem đoạn con từ ~L~ đến ~R~ của xâu ~S~ có phải là xâu đối xứng hay không. In ra YES nếu đoạn con là xâu đối xứng và NO nếu ngược lại.

Input

  • Dòng đầu tiên chứa xâu ~S~, độ dài xâu không vượt quá ~5000~;
  • Dòng thứ hai chứa số nguyên ~m\ (1 ≤ m ≤ 5000)~;
  • ~m~ dòng tiếp theo, mỗi dòng chứa hai số nguyên ~L~ và ~R~, mô tả một truy vấn ~(1 ≤ L ≤ R ≤ n)~.

Output

  • Với mỗi truy vấn, in ra YES nếu đoạn con là xâu đối xứng và NO nếu ngược lại.

Sample

Input #1
1001010
1
6 7
Output #1
NO
Input #2
00001
11
1 4
3 5
3 4
5 5
2 5
4 5
1 4
5 5
2 5
1 5
2 4
Output #2
YES
NO
YES
YES
NO
NO
YES
YES
NO
NO
YES
Input #3
1101111111111
5
4 8
1 9
5 9
9 13
10 13
Output #3
YES
NO
YES
YES
YES

Problem source: Kc97ble - Free Contest


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.