• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-72  評論-126  文章-0  trackbacks-0
            /*
            ID:notonlysuccess
            LANG:C++
            TASK:checker
            */
            #include
            <stdio.h>
            int cnt;
            int ans[3][13];
            int jilu[13];
            int n,maxn;
            void dfs(int row,int ld,int rd,int deep)
            {
                
            int i,buf,pos;
                
            if(deep == n)
                {
                    
            if(cnt<3)
                    {
                        
            for(i=0;i<n;i++)
                            ans[cnt][i] 
            = jilu[i];
                    }
                    cnt 
            ++;
                    
            return ;
                }
                buf 
            = row | ld | rd;
                
            for(i=0;i<n;i++)
                {
                    pos 
            = 1<<i;
                    
            if((buf & pos) == pos)
                        
            continue;
                    jilu[deep] 
            = i+1;
                    dfs(row
            +pos,(ld+pos)<<1,(rd+pos)>>1,deep+1);
                }
            }
            int main()
            {
                freopen(
            "checker.in","r",stdin);
                freopen(
            "checker.out","w",stdout);
                
            int i,j;
                scanf(
            "%d",&n);
                cnt 
            = 0;
                maxn 
            = 1<<n;
                dfs(
            0,0,0,0);
                
            for(i=0;i<3 && i<cnt;i++)
                {
                    
            for(j=0;j<n-1;j++)
                        printf(
            "%d ",ans[i][j]);
                    printf(
            "%d\n",ans[i][j]);
                }
                printf(
            "%d\n",cnt);
                
            return 0;
            }






            哈哈,hdoj上超大數據量的N皇后也過了。。

            #include<stdio.h>
            int cnt;
            int n,maxn;
            void dfs(int row,int ld,int rd)
            {
                
            int buf,pos;
                
            if(row == maxn)
                {
                    cnt 
            ++;
                    
            return ;
                }
                buf 
            = row | ld | rd;
                
            for(pos = 1;pos <= maxn;pos <<= 1)
                {
                    
            if((buf & pos) == pos)
                        
            continue;
                    dfs(row
            +pos,(ld+pos)<<1,(rd+pos)>>1);
                }
            }
            int main()
            {
                
            int i,pos;
                
            while(scanf("%d",&n),n)
                {
                    cnt 
            = 0;
                    maxn 
            = (1<<n) - 1;
                    
            for(i=0;i<n/2;i++)
                    {
                        pos 
            = 1<<i;
                        dfs(pos,pos
            <<1,pos>>1);
                    }
                    cnt 
            <<= 1;
                    
            if(n&1)
                    {
                        pos 
            = 1<<i;
                        dfs(pos,pos
            <<1,pos>>1);
                    }
                    printf(
            "%d\n",cnt);
                }
                
            return 0;
            }
            posted on 2009-04-15 12:24 shǎ崽 閱讀(1702) 評論(2)  編輯 收藏 引用

            評論:
            # re: 飄逸的N皇后問題位運算代碼,紀念USACO創過第一關~~matrix67大牛博客上學的 2009-04-24 10:54 | Apple
            按hint剪枝,比你的速度快~O(∩_∩)O~  回復  更多評論
              
            # re: 飄逸的N皇后問題位運算代碼,紀念USACO創過第一關~~matrix67大牛博客上學的 2009-04-28 14:41 | shǎ崽
            @Apple
            如何?
            我usaco上是0.3s  回復  更多評論
              
            亚洲日本久久久午夜精品| 国产精品久久网| 精品久久久久久无码中文字幕| 久久精品国产99久久久香蕉| 欧美午夜精品久久久久久浪潮| 久久精品国产亚洲av日韩| 久久久久亚洲AV无码专区首JN | 久久99中文字幕久久| 久久久这里只有精品加勒比| 久久久噜噜噜久久中文字幕色伊伊| 久久天天躁狠狠躁夜夜96流白浆 | 久久婷婷午色综合夜啪| 一本久久a久久精品综合夜夜| 人妻无码αv中文字幕久久琪琪布 人妻无码久久一区二区三区免费 人妻无码中文久久久久专区 | 性高湖久久久久久久久AAAAA | 国产日韩久久久精品影院首页| 久久99毛片免费观看不卡| 性做久久久久久久| 99蜜桃臀久久久欧美精品网站| 亚洲精品国精品久久99热一| 2021国产精品午夜久久| 99久久国产综合精品女同图片| 久久九色综合九色99伊人| 久久久久亚洲av无码专区喷水| 99久久精品国产综合一区| 99久久免费国产精品特黄| 久久免费国产精品一区二区| 久久亚洲中文字幕精品一区| 久久av免费天堂小草播放| 国内精品伊人久久久久| 香蕉久久夜色精品升级完成| 色综合久久久久综合99| 国产精品一区二区久久精品无码 | 午夜久久久久久禁播电影| 精品久久久久久国产牛牛app| 无码超乳爆乳中文字幕久久 | 久久综合亚洲色一区二区三区| 久久国产成人精品国产成人亚洲| 香蕉久久av一区二区三区 | 久久精品国产色蜜蜜麻豆| 久久人人爽人人爽人人片AV麻豆|