我想创建一个约束来过滤nxn矩阵中的所有重复行,其中每个字段由0或1组成。矩阵最多可以包含10x10行和列。 例如。我们有以下4x4矩阵:
0 1 0 1
1 1 1 0
0 1 0 1
1 0 1 1
然后第1行和第3行是相同的,这是不可能的。我一直在想这个问题4个小时,但没有运气。
有人可以给我一个暗示吗?
答案 0 :(得分:1)
正如您所注意到的,您不能只是"只是"得到行(1,0,1,1)在数据记录关系中出现两次。当然,问题是数据目录关系存储集而不是列表或元素的多集。处理此问题的最佳方法是添加额外数据,以跟踪行发生的频率,将矩阵视为从索引到值的映射。您可以尝试以下方法之一:
myUnorderedMultiset[x,y,z,w]=count -> int(x), int(y), int(z), int(w), int(count).
或
myMatrix[rowIndex, columnIndex] = value -> int(rowIndex), int(columnIndex), int(value).