CCC '09 S2 - Lights Going On and Off
View as PDFCanadian Computing Competition: 2009 Stage 1, Senior #2
For your birthday, you have been given a grid of  
 rows of lights, with each row containing 
 
 lights. Lights can be in one of two states: on or off. For this question, the topmost row is row 
, and the bottom-most row is row 
. Also, beside all rows except the topmost row (row 
), there is a button which can be pushed.
Pushing the button beside row  
 will perform an "exclusive-or" operation on each light of row 
, which is described below. Consider column 
 in row 
, where 
. If the lights in column 
 of row 
 and column 
 of row 
 are both the same (i.e., both on, or both off), then pushing the button beside row 
 will cause the light in column 
 of row 
 to be off. If the lights in column 
 of row 
 and column 
 of row 
 are different (i.e., one is on, and the other is off), then pushing the button beside row 
 will cause the light in column 
 of row 
 to be on. An example is shown below, for 
:
| Column Numbers | 1 | 2 | 3 | 4 | 
|---|---|---|---|---|
| Row  | 
    on | on | off | off | 
| Row  | 
    on | off | on | off | 
| Row  | 
    off | on | on | off | 
You are told which lights are initially on and which are initially off. You must calculate how many different light patterns are possible for the bottom row by any sequence of button pushes. Each button may only be pressed once, but in any order.
Input Specification
The first line of input will contain the integer , the number of rows. The second line of input will contain the integer 
, the number of lights per row. The next 
 lines of input will contain 
 integers, where the integer will either be 
 (to indicate "off") or 
 (to indicate "on"). Pairs of consecutive integers will be separated by one space character. These 
 lines will be given in topdown order: that is, the third line of input will be the description of row 
, the fourth line will be 
, and so on, until the last line describes the bottom row.
Output Specification
Output the number of possible light patterns of the bottom row.
Sample Input
4
3
0 0 1
0 1 1
1 0 1
0 0 1
Sample Output
4
Comments
what if you press the first button?
And you have to calculate/write code for your birthday???
keyboards have 6 rows and 21 columns, so this gift could have totally been a sideways RGB gaming keyboard, which is a pretty good present. Why are people saying its bad?
idk what people are saying, this present rocks
i guess these are the kinds of bday presents ppl get in dmojistan
worst birthday present ever
what kind of parent would buy their kids this
do you have to press every button?
update:no you don't