LITES - Bật đèn

Giới hạn
  • Thời gian: 0.3s
  • Bộ nhớ: 1536MB
  • Mã nguồn: 50000 bytes

Ghi chú: Các bài VNOI đã được chuyển qua VNOJ (Thông báo). Đề bài trên VNOI và vn.spoj.com sẽ không được cập nhật nữa. Một số đề bài không chính xác sẽ chỉ được cập nhật trên VNOJ. Bạn vẫn có thể tìm kiếm đề bài trên VNOI.

Link đọc đề trên VNOJ

Bác John giữ cho đàn bò thông minh bằng cách để chúng chơi các đồ chơi phát triển trí tuệ. Một trong các trò chơi là các ngọn đèn trong chuồng. Mỗi trong số N (2 <= N <= 100,000) con bò được đánh số từ 1..N có treo một ngọn đèn màu.

Vào đầu buổi tối, tất cả đèn đều tắt. Đàn bò điều khiển các ngọn đèn bằng N công tắc; bấm công tắc i đổi trạng thái của đèn i từ tắt sang bật hoặc ngược lại.

Đàn bò đọc và thực thi một danh sách gồm M (1 <= M <= 100,000) thao tác mô tả bởi một trong hai số nguyên (0 <= thao tác <= 1).

Thao tác thứ nhất (mô tả bởi số 0) theo sau bởi hai số nguyên S_i và E_i (1 <= S_i <= E_i <= N) cho biết công tắc đầu và công tắc cuối. Đàn bò sẽ bấm mỗi công tắc từ S_i đến E_i đúng một lần.

Thao tác thứ hai (mô tả bởi số 1) yêu cầu đàn bò đến xem có bao nhiêu ngọn đèn giữa S_i và E_i (1 <= S_i <= E_i <= N) đang bật. Hãy giúp bác John đảm bảo rằng đàn bò trả lời đúng bằng cách xử lý danh sách và trả về các kết quả đúng.

Dữ liệu

* Dòng 1: Hai số nguyên cách nhau bởi khoảng trắng: N và M

* Dòng 2..M+1: Mỗi dòng chứa một thao tác với ba số nguyên cách nhau bởi khoảng trắng: thao tác, S_i, và E_i

Kết quả

* Dòng 1..số truy vấn: Với mỗi truy vấn, in ra kết quả là một số nguyên trên một dòng.

Ví dụ

Dữ liệu:
4 5
0 1 2
0 2 4
1 2 3
0 2 4
1 1 4

Kết quả:
1
2


  • Người up: hphong
  • Nguồn bài: USACO November 2008