24小时热门版块排行榜    

查看: 1147  |  回复: 7

文俊点点

木虫 (著名写手)


[交流] 【讨论】四皇后回溯遍历

自己写的四皇后回溯遍历问题,即在4*4的方格上放置四个皇后,任意两个不能同行同列,及在对角线的位置上。感觉没问题  但没有输出,好像是死循环·········

求助~~~~~~~~~~~~
#include
#include
void main(){
int b[5];
int i=2,j=1;
b[1]=1;
while(b[1]<=4){printf("*";
        for(int k=1;k<5;k++){
                int flag=0;
                for(int m=1;m<=j;m++){
                        if(k==b[m]){flag=1;break;}       
                        if(fabs(b[m]-k)==fabs(m-i)){flag=1;break;}       
                }
                if(flag==1)continue;
                j++;b[j]=k;i++;break;
        }

        if(j<4&&b[j]!=4){
                        while(b[j]<4){
                                int flag1=0;
                                b[j]++;
           for(int m=1;m                         if(b[j]==b[m]){flag1=1;break;}       
                        if(fabs(b[m]-b[j])==fabs(m-j)){flag1=1;break;}       
                }
                   if(flag1==0) break;
                        }               
        }

                if(j<4&&b[j]==4){
                        while(j>=1){
                                int flag2=0;
                        j--;i--;
                        if(b[j]==4){
                        j--;i--;}
                        b[j]++;
        for(int m=1;m                         if(b[j]==b[m]){flag2=1;break;}       
                        if(fabs(b[m]-b[j])==fabs(m-j)){flag2=1;break;}       
                }
           if(flag2==0) break;
                        }
               
                }


        if(j==4){
                for(int m=1;m<5;m++)
                printf("%d  ",b[m]);
                if(b[1]<4){j=1;b[j]++;i=2;}
        }

        }
}

[ Last edited by mze04532 on 2011-4-16 at 14:10 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

文俊点点

木虫 (著名写手)


`````````````太伤心了  没人理我···············
2楼2011-04-22 21:19:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
文俊点点(金币+5): 说的也是啊··········不过已解决了················ 2011-04-23 13:37:52
引用回帖:
Originally posted by 文俊点点 at 2011-04-16 12:18:32:
自己写的四皇后回溯遍历问题,即在4*4的方格上放置四个皇后,任意两个不能同行同列,及在对角线的位置上。感觉没问题  但没有输出,好像是死循环·········

求助~~~~~~~~~~~~
#include<stdio.h> ...

希望尽量详细介绍算法的出发点、设计思想、算法输入输出定义,以及应用场合吧。
否则没头没脑的,让大家怎么帮你?
3楼2011-04-22 21:41:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liujie8882

铁虫 (正式写手)


文俊点点(金币+1): ````````````````````````` 2011-04-24 12:03:15
祝一切顺利……
4楼2011-04-22 21:53:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sunlin313

禁虫 (初入文坛)

文俊点点(金币+4): 剩下4个金币都给你吧············· 2011-05-19 18:13:48
本帖内容被屏蔽

5楼2011-05-11 19:19:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

beyond9522

银虫 (小有名气)



小木虫(金币+0.5):给个红包,谢谢回帖
确实看不出发程序要干什么?
6楼2011-08-27 22:47:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

aarondeng

金虫 (小有名气)



小木虫(金币+0.5):给个红包,谢谢回帖
while(b[1]<=4)
这里的b[1]是不是错了?应该是b?
没认真看,如果是进入死循环,肯定是在这些判断的地方啊。
7楼2011-08-28 23:16:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

文俊点点

木虫 (著名写手)


引用回帖:
7楼: Originally posted by aarondeng at 2011-08-28 23:16:09:
while(b[1]<=4)
这里的b[1]是不是错了?应该是b?
没认真看,如果是进入死循环,肯定是在这些判断的地方啊。

已经解决了········这是很久以前的问题了··········
8楼2011-08-30 13:01:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 文俊点点 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 基金中了 +15 laoda193707 2026-08-06 15/750 2026-08-11 00:11 by jiafei2190
[基金申请] filecode +8 documentary 2026-08-10 8/400 2026-08-10 19:20 by loufangrui
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 关于代码变化问题,想知道的进来 +17 且听虎啸 2026-08-07 24/1200 2026-08-10 18:35 by zhangduo2008
[基金申请] 静等基金结果 +5 gjjjzhong 2026-08-10 16/800 2026-08-10 17:19 by Tide man
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +14 Lanmanbaby 2026-08-09 22/1100 2026-08-10 14:57 by wwncly
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +4 布布和一二 2026-08-10 4/200 2026-08-10 14:50 by 医学老男孩
[基金申请] 8月时间戳变的,举个手。玩一下,释放压力 +11 archvillain 2026-08-04 13/650 2026-08-10 14:41 by seekfind
[基金申请] 好奇怪的filecode +4 布布和一二 2026-08-08 5/250 2026-08-10 14:20 by 冰心玉壶晴
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] filecode与中标关系的预测 +5 布布和一二 2026-08-07 5/250 2026-08-09 16:15 by 袁向阳007
[基金申请] fileCode有新解读? +10 Tide man 2026-08-08 18/900 2026-08-09 12:55 by 仁砚薪传
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +7 a089 2026-08-07 7/350 2026-08-08 18:05 by gltch
[基金申请] 固定端突然变了,今天 +6 archvillain 2026-08-06 10/500 2026-08-07 16:03 by 医学老男孩
[基金申请] 听说今天filecode变了 +24 布布和一二 2026-08-06 47/2350 2026-08-07 16:02 by zhiyanjiang
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 7/350 2026-08-07 13:11 by 医学老男孩
[基金申请] filecode +14 等待解的谜 2026-08-06 19/950 2026-08-07 12:20 by wlwhappy
[基金申请] 影响面上的因素 +8 布布和一二 2026-08-05 11/550 2026-08-06 10:41 by 宝贝虫子
信息提示
请填处理意见