C# 二维三态阵列矩阵的置换

C# 二维三态阵列矩阵的置换,c#,C#,我想得到一个二维数组的置换,条件如下 矩阵具有与n元素相同的长度和宽度 每个元素的值可以是1或0 第i行和第i列的值必须为0。其他可以是0或1 如果i表示行号,j表示列号。矩阵[i,j]和矩阵[j,i]可以是一个值为0,另一个值为1,或者两者都为0。例如,对于矩阵[1,2]和矩阵[2,1]。组合的可能性只有三种 矩阵[1,2]=0,矩阵[2,1]=0 矩阵[1,2]=0,矩阵[2,1]=1 矩阵[1,2]=1,矩阵[2,1]=0 如果n=3,则应具有以下组合 0 0 0 0 0 0110 0 0

我想得到一个二维数组的置换,条件如下

  • 矩阵具有与n元素相同的长度和宽度

  • 每个元素的值可以是1或0

  • 第i行和第i列的值必须为0。其他可以是0或1

  • 如果i表示行号,j表示列号。矩阵[i,j]和矩阵[j,i]可以是一个值为0,另一个值为1,或者两者都为0。例如,对于矩阵[1,2]和矩阵[2,1]。组合的可能性只有三种

  • 矩阵[1,2]=0,矩阵[2,1]=0

    矩阵[1,2]=0,矩阵[2,1]=1

    矩阵[1,2]=1,矩阵[2,1]=0

    如果n=3,则应具有以下组合

    0
    0
    0 0 0

    0110
    0
    0 0 0

    01
    0
    0 0 0

    01
    01
    0 0 0

    0
    100
    0 0 0

    0
    100
    100

    0
    100
    110

    0
    100
    110

    01
    100
    0110

    0110
    0
    110

    0
    1 01
    100

    0110
    01
    100

    如何编写代码来获得这个n大小矩阵的排列?
    无需显示结果,您只需获得排列即可。

    您认为您将如何解决此问题,您尝试了哪些方法,哪些方法无效?我的意思是你肯定有一个idea@MichaelRandall我还在想这个问题。目前没有解决方案。你真的需要举一个更好的例子,更好地解释你想要什么。我的意思是,应该有人能马上过来看看你的意思。你能把你的输入和输出,以及更多吗explanation@paddywide-请提供样本输入(多个)和相关输出-全部作为有效的C#代码。然后尽可能多地提供从输入到输出的转换代码。然后我们就可以帮忙了。现在这对我来说太像是一项艰苦的工作了,我甚至想都不敢想。如果答案很容易,那么你会得到很好的答案。几周前,我在答案中计算了mod 3:你认为你会如何解决这个问题,你做了哪些尝试,哪些没有成功?我的意思是你肯定有一个idea@MichaelRandall我还在想这个问题。目前没有解决方案。你真的需要举一个更好的例子,更好地解释你想要什么。我的意思是,应该有人能马上过来看看你的意思。你能把你的输入和输出,以及更多吗explanation@paddywide-请提供样本输入(多个)和相关输出-全部作为有效的C#代码。然后尽可能多地提供从输入到输出的转换代码。然后我们就可以帮忙了。现在这对我来说太像是一项艰苦的工作了,我甚至想都不敢想。如果答案很容易,那么你会得到很好的答案。几周前,我在答案中计算了mod 3: