灯光开关切换(c++):数组问题

农夫JOHN为了保持奶牛拥有一个聪明的脑袋(很令人怀疑,囧),所以让它们玩脑力开发玩具。其中一个较大型的玩具就是在牛棚中的电灯。农场中总共有N(2<=N<=500)个牛棚,每个牛棚上方都有一个编号为1到N的彩色灯泡。
傍晚时分,所有的灯泡都是关闭着的。奶牛们通过N个按钮来控制着灯泡的开与关。按下编号为I的按钮会使编号为I的灯泡的状态改变,比如从开到关,从关到开。
奶牛们阅读并执行一个由M(1<=M<=2000)个操作符和它的参数所组成的操作清单。每个操作符由一个整数表示(0<=操作符<=1)。
编号为0的操作符包括2个参数,S_i和E_i(1<=S_i<=E_i<=N),要求奶牛依次按下了从第S_i号开关到第E_i号的开关。
编号为1的操作符仍然有2个参数,S_i和E_i。这条命令要求奶牛数出在第S_i号和第E_i号灯泡之中,有多少灯泡是亮着的。
请你帮助农夫JOHN确定奶牛是否按下了正确的按钮和数出正确的答案。