24小时热门版块排行榜    

查看: 983  |  回复: 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的回帖
相关版块跳转 我要订阅楼主 文俊点点 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 生物学学硕求调剂 +7 小羊睡着了? 2026-03-23 10/500 2026-03-25 02:24 by 清风拂扬。 m
[考研] 材料学求调剂 +6 Stella_Yao 2026-03-20 6/300 2026-03-25 00:37 by baoball
[考研] 0856材料专硕353求调剂 +6 NIFFFfff 2026-03-20 6/300 2026-03-24 21:02 by hello七七
[考研] 307求调剂 +3 余意卿 2026-03-21 6/300 2026-03-24 15:03 by 余意卿
[考研] 293求调剂 +6 加一一九 2026-03-24 6/300 2026-03-24 14:29 by JourneyLucky
[考研] 求材料,环境专业调剂 +3 18567500178 2026-03-18 3/150 2026-03-23 23:50 by 热情沙漠
[考研] 一志愿国科过程所081700,274求调剂 +3 三水研0水立方 2026-03-23 3/150 2026-03-23 23:11 by MajorWen
[考研] 材料专硕英一数二306 +8 z1z2z3879 2026-03-18 8/400 2026-03-23 20:49 by baobaoye
[考研] 一志愿重庆大学085700资源与环境,总分308求调剂 +7 墨墨漠 2026-03-23 8/400 2026-03-23 20:36 by Creta
[考研] 350求调剂 +6 weudhdk 2026-03-19 6/300 2026-03-23 15:47 by tangyuan0840221
[考研] 材料与化工085600,总分304,本科有两篇sci参与,求调剂 +4 幸运的酱酱 2026-03-22 5/250 2026-03-22 20:15 by edmund7
[考研] 287求调剂 +8 晨昏线与星海 2026-03-19 9/450 2026-03-22 17:01 by i_cooler
[考研] 306求调剂 +5 来好运来来来 2026-03-22 5/250 2026-03-22 16:17 by BruceLiu320
[考研] 生物学调剂 +5 Surekei 2026-03-21 5/250 2026-03-22 14:39 by tcx007
[考研] 285求调剂 +6 ytter 2026-03-22 6/300 2026-03-22 12:09 by 星空星月
[考研] 求调剂 +3 .m.. 2026-03-21 4/200 2026-03-21 16:25 by barlinike
[考研] 0805材料320求调剂 +3 深海物语 2026-03-20 3/150 2026-03-21 15:46 by 无际的草原
[考研] 279求调剂 +5 红衣隐官 2026-03-21 5/250 2026-03-21 14:59 by lature00
[考研] 南昌大学材料专硕311分求调剂 +6 77chaselx 2026-03-20 6/300 2026-03-21 07:24 by JourneyLucky
[考研] 一志愿 西北大学 ,070300化学学硕,总分287,双非一本,求调剂。 +4 晨昏线与星海 2026-03-19 4/200 2026-03-20 22:15 by JourneyLucky
信息提示
请填处理意见