题目描述:有n个相同的开关,每个开关都与某些开关有着联系,每当你打开或者关闭某个开关的时候,其他的与此开关相关联的开关也会相应地发生变化,即这些相联系的开关的状态如果原来为开就变为关,如果为关就变为开.你的目标是经过若干次开关操作后使得最后n个开关达到一个特定的状态.对于任意一个开关,最多只能进行一次开关操作.你的任务是,计算有多少种可以达到指定状态的方法.(不计开关操作的顺序) 下面是1830怎么和高斯消元联系起来:(转自他人blog,灰常经典) 对于每个灯有动它和不动它2种状态,用1,0表示,那么可以构造列向量x=[x1,x2....xn],xi =0 或者1. 系数矩阵b[b1,b2...bn],变换矩阵a[n][n]; 假设 a*x = b,那么bi 等于 a的第i行元素和x对应相乘,那么我们可以这样来设置a[i][j]: 如果第j个灯操作会影响i,那么a[i][j]=1. 如果i的初始化状态和目标状态不同,那么b[i]=1. 因为b[i] 等于 a的第i行元素和x对应相乘.