Welcome to Cnxgo.com
添加留言
昵称

网址

电邮
打开HTML 打开UBB 表情 打开表情 隐藏 记住我 [注册]

 
kevin 说:
2009/06/18 19:22
#include <stdio.h>

void myp(int xy[4][3],int all)
{
    int i,j;
    printf("第 %d 种方法:n",all);
    for(i=0;i<4;i++)
    {

        for(j=0;j<3;j++)
            if(xy[i][j]!=0)
                printf("%d ",xy[i][j]);
            else
               printf("  ");
        printf("n");
    }
    printf("n");

}


int main()
{
    int a,b,c,d,e,f,g,h,all=0,num[4][3]={0};
    for(a=1;a<9;a++)
    {
        for(b=1;b<9;b++)
        {
            if(a==b) continue;
            for(c=1;c<9;c++)
            {
                if((a==c) || (b==c)) continue;
                for(d=1;d<9;d++)
                {
                    if((a==d) || (b==d) || (c==d)) continue;
                    for(e=1;e<9;e++)
                    {
                        if((a==e) || (b==e) || (c==e) || (d==e)) continue;
                        for(f=1;f<9;f++)
                        {
                            if((a==f) || (b==f) || (c==f) || (d==f) || (e==f)) continue;
                            for(g=1;g<9;g++)
                            {
                                if((a==g) || (b==g) || (c==g) || (d==g) || (e==g) || (f==g)) continue;
                                for(h=1;h<9;h++)
                                {
                                    if((a==h) || (b==h) || (c==h) || (d==h) || (e==h) || (f==h) || (g==h)) continue;
                                    if((a+1==b) || (a+1==c) || (a+1==d))  break;
                                    if((a==b+1) || (a==c+1) || (a==d+1))  break;
                                    if((h+1==e) || (h+1==f) || (h+1==g))  break;
                                    if((h==e+1) || (h==f+1) || (h==g+1))  break;
                                    
                                    if((c+1==b) || (c+1==d) || (c+1==e) || (c+1==f) || (c+1==g))  break;
                                    if((c==b+1) || (c==d+1) || (c==e+1) || (c==f+1) || (c==g+1))  break;
                                    
                                    if((f==b+1) || (f==d+1) || (f==e+1) || (f==g+1))  break;
                                    if((e==f+1) || (g==f+1) || (d==f+1) || (f==b+1))  break;
                                    
                                    if((d==g+1) || (g==d+1))  break;
                                    if((e==b+1) || (b==e+1))  break;
                                    all++;
                                    num[0][1]=a;
                                    num[1][0]=b;
                                    num[1][1]=c;
                                    num[1][2]=d;
                                    num[2][0]=e;
                                    num[2][1]=f;
                                    num[2][2]=g;
                                    num[3][1]=h;
                                    myp(num,all);

                                }
                            }
                        }
                    }
                }
            }
        }
    }
}




第 1 种方法:
  1
3 8 6
5 2 4
  7

第 2 种方法:
  2
5 8 6
3 1 4
  7

第 3 种方法:
  2
6 8 5
4 1 3
  7

第 4 种方法:
  3
5 1 6
7 4 8
  2

第 5 种方法:
  3
5 1 8
7 4 6
  2

第 6 种方法:
  3
5 8 6
1 4 2
  7

第 7 种方法:
  3
5 8 6
2 4 1
  7

第 8 种方法:
  4
2 8 6
5 1 3
  7

第 9 种方法:
  4
6 8 1
2 5 3
  7

第 10 种方法:
  5
7 1 3
4 6 8
  2

第 11 种方法:
  6
2 8 3
4 1 5
  7

第 12 种方法:
  6
8 1 3
4 7 5
  2

第 13 种方法:
  7
3 1 4
5 8 6
  2

第 14 种方法:
  7
4 1 3
6 8 5
  2
第三者 说:
2008/10/29 16:02
亲爱的,你好久没有来找我了,把我忘记了吗,忘记我们那一夜柔情了吗?
cnxgo 回复于 2008/10/29 17:35: .
此人为摇摆人
  签定完毕
秀儿 说:
2008/04/04 00:03
内容太简单了..
继续努力!shy