C++金币阵列

QHQ-【问题描述】有m*n(m<=100, n<=100)枚金币在桌面上排成一个m行n列的金币矩阵。每枚金币或正面朝上或背面朝上。用数字表示金币状态,0表示金币正面朝上,1表示金币背面朝上。 金币矩阵游戏的规则是:1.每次可将任一行金币翻转过来放在原来的位置上;2.每次可任选2列,交换着2列金币位置。 算法设计:给定金币阵列的初始状态和目标状态,计算按金币游戏规则,将金币阵列从初始状态转换到目标状态所需要的最小变换次数。