24小时热门版块排行榜    

查看: 1205  |  回复: 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的回帖
相关版块跳转 我要订阅楼主 文俊点点 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 基金未中,这种答复是模板吗? +6 zhaosm1982 2026-08-27 7/350 2026-08-31 21:18 by qdxxmc
[基金申请] 哪位高人中了,把查询到的截图贴出来让我看看,让我长长见识 +6 yuleib84 2026-08-26 7/350 2026-08-31 19:46 by 鱼翔浅底1
[基金申请] 面上意见出来了 +12 黄鸟于飞Chao 2026-08-29 23/1150 2026-08-31 18:57 by 黄鸟于飞Chao
[文学芳草园] 梦想 +5 myrtle 2026-08-26 5/250 2026-08-31 14:40 by hahaboy
[基金申请] 基金不中,共勉 +12 eulota 2026-08-26 12/600 2026-08-31 08:42 by ZJTJZ
[基金申请] 为什么到现在没收到通知? +5 tannykie 2026-08-29 5/250 2026-08-30 21:05 by purplejack
[基金申请] 国自然面上复盘~欢迎讨论 (金币+15) +15 晴天加油 2026-08-26 16/800 2026-08-29 18:28 by symmetry
[基金申请] 国自然评审意见 +13 wangmingqi 2026-08-28 19/950 2026-08-29 10:22 by Poppy1104
[基金申请] 为什么资助数各大高校都创新高,自己申请怎么就这么难 +12 Kittylucky 2026-08-27 13/650 2026-08-29 00:04 by superceng
[基金申请] 系统查不到 +11 董八千 2026-08-26 11/550 2026-08-28 18:06 by Leogzhya
[基金申请] 怎么查啊 +6 huang1991js 2026-08-26 6/300 2026-08-28 08:42 by winsaint
[基金申请] 为什么 国际(地区)合作与交流项目 没有放榜? 10+3 majunge000 2026-08-26 11/550 2026-08-27 08:42 by 北京莱茵编辑
[基金申请] 2026年8月25日国自然放榜前突然收到列入评审专家邮件,有关系吗? +25 木水思豆 2026-08-25 28/1400 2026-08-26 14:53 by draco1987
[基金申请] 出来了 +9 trojank 2026-08-26 9/450 2026-08-26 14:25 by 宝贝虫子
[基金申请] 国合里面能看到了 +7 一怀馨秋 2026-08-26 7/350 2026-08-26 11:23 by zhaosm1982
[基金申请] 国际合作可查了,中了面上 (EPI+1)(金币+50) +18 Ldrop2023 2026-08-26 18/900 2026-08-26 11:15 by cmrandy
[基金申请] 国合可查了 +3 paperzjh 2026-08-26 3/150 2026-08-26 10:41 by LemmonTr
[基金申请] 今天务委会开完了,明天出结果吗 +19 angus9576 2026-08-25 23/1150 2026-08-26 10:03 by zp519
[基金申请] 在坚冰还盖着北海的时候,我看到了怒放的梅花。 (金币+10) +6 ziyangfang 2026-08-25 9/450 2026-08-25 20:26 by huagongfeihu
[基金申请] 某些机构,以效率低为荣,以效率低作为存在感 +9 yuleib84 2026-08-25 10/500 2026-08-25 17:14 by alexon
信息提示
请填处理意见