青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Onway

我是一只菜菜菜菜鳥...
posts - 61, comments - 56, trackbacks - 0, articles - 34

pku 1315 回溯法

Posted on 2010-12-17 10:10 Onway 閱讀(378) 評論(0)  編輯 收藏 引用 所屬分類: 傷不起的ACM
/*************************************************************************
*pku 1315 Don't Get Rooked
http://poj.org/problem?id=1315
題目分類:回溯法
題意:n*n的棋盤,類似n后問題,橫豎不能放兩個棋子,不同的是,少了\
對角線的限制,棋盤里多了分割橫行和豎行的墻。求最多能放棋子數(shù)。
思路:枚舉第一個棋子的位子,確定第一個棋子位置后,對后面的棋子用\
遞歸深搜(即回溯法)暴力求解剩下能放的棋子。題目的難點是進入深搜時\
的標(biāo)記和回溯時撤銷標(biāo)記的操作。
代碼附注:近段時間比較少做題,在標(biāo)記操作里調(diào)試了很久,最后還感覺\
改得挺惡心的,代碼很臃腫。但交上去居然0MS一次AC了,也有借口不改進了。
*************************************************************************
*/


#include 
<iostream>
using namespace std;
char board[5][5];
int record[5][5];
int sum,tmp,n;
int code=0;

void rec(int ,int);
int main()
{
    
while(cin>>n&&n)
    {
        memset(record,
-1,sizeof(record));
        
int i,j;
        
for(i=0;i<n;++i)
            cin
>>board[i];

        sum
=0;tmp=0;
        
for(i=0;i<n;++i)
            
for(j=0;j<n;++j)
            {
                
if(board[i][j]!='X')
                    rec(i,j);
            }
        cout
<<sum<<endl;
    }
    
return 0;
}

void sign(int i,int j)
{
    
int k;
    
for(k=i-1;k>=0;--k)
        
if(board[k][j]=='X')    break;
        
else if(board[k][j]=='.')
        {board[k][j]
='u';record[k][j]=code;}
    
for(k=i+1;k<n;++k)
        
if(board[k][j]=='X')    break;
        
else if(board[k][j]=='.')
        {board[k][j]
='u';record[k][j]=code;}
    
for(k=j-1;k>=0;--k)
        
if(board[i][k]=='X')    break;
        
else if(board[i][k]=='.')
        {board[i][k]
='u';record[i][k]=code;}
    
for(k=j+1;k<n;++k)
        
if(board[i][k]=='X')    break;
        
else if(board[i][k]=='.')
        {board[i][k]
='u';record[i][k]=code;}
}
void reset(int i,int j)
{
    
int k;
    
for(k=i-1;k>=0;--k)
        
if(board[k][j]=='X')    break;
        
else if(board[k][j]=='u'&&record[k][j]==code)
        {board[k][j]
='.';record[k][j]=-1;}
    
for(k=i+1;k<n;++k)
        
if(board[k][j]=='X')    break;
        
else if(board[k][j]=='u'&&record[k][j]==code)
        {board[k][j]
='.';record[k][j]=-1;}
    
for(k=j-1;k>=0;--k)
        
if(board[i][k]=='X')    break;
        
else if(board[i][k]=='u'&&record[i][k]==code)
        {board[i][k]
='.';record[i][k]=-1;}
    
for(k=j+1;k<n;++k)
        
if(board[i][k]=='X')    break;
        
else if(board[i][k]=='u'&&record[i][k]==code)
        {board[i][k]
='.';record[i][k]=-1;}
}
void rec(int i,int j)
{
    
++tmp;
    
++code;
    board[i][j]
='r';
    sign(i,j);
    
for(int row=i;row<n;++row)
    {
        
int col;
        
if(row==i)    col=j+1;
        
else col=0;
        
for(;col<n;++col)
        {
            
if(board[row][col]=='.')
                rec(row,col);
        }
    }
    
if(sum<tmp)    sum=tmp;
    reset(i,j);
    board[i][j]
='.';
    
--code;
    
--tmp;
}
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲欧美日韩成人| 免费成人av资源网| 国产精品国产三级国产专区53| 99精品视频免费全部在线| 欧美激情精品久久久久久久变态| 噜噜噜91成人网| 亚洲毛片在线免费观看| 亚洲美女91| 国产精品丝袜91| 久久蜜臀精品av| 欧美大片在线观看| 亚洲嫩草精品久久| 久久精品国产亚洲一区二区| 最新国产成人av网站网址麻豆| 亚洲精品国产精品乱码不99按摩| 欧美精品亚洲二区| 欧美一级日韩一级| 麻豆国产精品777777在线| 一区二区欧美亚洲| 香蕉久久一区二区不卡无毒影院 | 亚洲一区二区三区影院| 国产亚洲精品bt天堂精选| 免费成人在线观看视频| 欧美日韩亚洲视频| 免费久久久一本精品久久区| 欧美人交a欧美精品| 久久国产免费看| 欧美裸体一区二区三区| 久久精品视频播放| 欧美日韩国内| 老司机aⅴ在线精品导航| 欧美三级电影一区| 欧美激情小视频| 国产日本精品| 亚洲美洲欧洲综合国产一区| 狠久久av成人天堂| 亚洲综合日韩在线| 日韩一区二区精品葵司在线| 久久成人精品无人区| 亚洲免费一级电影| 欧美欧美天天天天操| 久久视频这里只有精品| 欧美视频一区二| 亚洲国产欧美在线人成| 韩国成人精品a∨在线观看| 亚洲一级高清| 中文国产一区| 欧美日韩成人在线视频| 美女主播一区| 国产一级久久| 亚洲欧美美女| 亚洲欧美一区二区原创| 欧美xx69| 美女精品一区| 中文精品99久久国产香蕉| 亚洲区中文字幕| 久久综合久久综合久久| 久久婷婷亚洲| 极品尤物av久久免费看| 久久精品欧美| 欧美成人第一页| 亚洲国产1区| 久久久久久久综合日本| 欧美精品乱码久久久久久按摩| 久久夜色精品国产欧美乱| 韩国福利一区| 久久亚洲精品伦理| 欧美大片免费久久精品三p | 亚洲国产成人av好男人在线观看| 久久久精品一区| 美女脱光内衣内裤视频久久网站| 国内视频精品| 蜜臀久久久99精品久久久久久| 麻豆久久婷婷| 亚洲国产专区校园欧美| 欧美丰满少妇xxxbbb| 亚洲激情国产精品| 亚洲婷婷综合久久一本伊一区| 欧美日韩在线视频一区二区| a4yy欧美一区二区三区| 亚洲一区二区精品在线| 国产精品日本| 羞羞漫画18久久大片| 久久婷婷av| 亚洲精品美女在线观看播放| 欧美日韩免费观看一区三区| 亚洲影院色在线观看免费| 久久色在线观看| 亚洲国产精品t66y| 欧美视频三区在线播放| 欧美一区二区视频免费观看| 久久综合伊人77777蜜臀| 亚洲美女在线观看| 国产精品一区二区在线观看| 久久偷窥视频| 一本久道久久综合狠狠爱| 久久精品观看| 99视频一区二区| 国产一区二区三区久久悠悠色av| 久久综合久久久| 亚洲自拍偷拍一区| 欧美高清视频www夜色资源网| 亚洲曰本av电影| 尤物在线观看一区| 国产精品久久久久av免费| 久久久久成人精品| 在线一区亚洲| 亚洲国产欧美在线人成| 久久久福利视频| 亚洲天堂第二页| 在线观看欧美| 国产伦精品一区二区三区高清| 欧美91精品| 久久精品亚洲国产奇米99| 一区二区三欧美| 亚洲成人资源| 另类综合日韩欧美亚洲| 亚洲一区二区三区在线| 亚洲黑丝在线| 国产午夜久久| 国产精品夜夜嗨| 国产精品jvid在线观看蜜臀| 久久中文字幕一区| 欧美综合二区| 久久精品系列| 午夜国产精品视频免费体验区| 亚洲欧洲日产国产网站| 精品99一区二区| 国产欧美日韩不卡| 国产精品a级| 欧美精品久久久久久久久老牛影院 | 久久五月婷婷丁香社区| 欧美一区二区啪啪| 亚洲视频免费看| 夜夜狂射影院欧美极品| 亚洲精品国产精品国自产观看浪潮| 黄色成人av网| 黑人一区二区三区四区五区| 国产欧美日韩亚洲精品| 国产精品综合视频| 国产精品视频导航| 国产精品视频网| 国产欧美1区2区3区| 国产欧美va欧美va香蕉在| 国产精品视频久久久| 国产精品免费看| 国产日产欧产精品推荐色| 国产日韩成人精品| 国产日韩在线看片| 激情综合亚洲| 亚洲国产欧美一区二区三区同亚洲| 亚洲国产精品va| 日韩一级黄色片| 亚洲女ⅴideoshd黑人| 欧美在线视频观看| 老色鬼久久亚洲一区二区| 欧美成人嫩草网站| 亚洲国产一二三| 一区二区日韩伦理片| 午夜精品偷拍| 久久深夜福利| 欧美精品久久久久久久| 国产精品久久一级| 精品成人国产在线观看男人呻吟| 在线观看中文字幕不卡| 在线亚洲精品| 久久高清一区| 欧美激情网友自拍| 亚洲一区二区三区免费观看| 久久成人18免费网站| 欧美成人乱码一区二区三区| 欧美天堂亚洲电影院在线观看 | 欧美另类在线观看| 国产欧美视频在线观看| 亚洲国产精品第一区二区三区| 一本色道久久88精品综合| 性欧美videos另类喷潮| 免费不卡视频| 亚洲一区二区高清视频| 久久综合网络一区二区| 国产精品分类| 亚洲成色www久久网站| 亚洲免费视频在线观看| 欧美国产综合| 性一交一乱一区二区洋洋av| 欧美精品1区| 好看的日韩视频| 亚洲欧美成人一区二区在线电影| 美女网站在线免费欧美精品| 亚洲一区二区三区视频| 欧美不卡高清| 国内精品福利| 亚洲影视九九影院在线观看| 欧美成人三级在线| 午夜在线视频一区二区区别| 欧美日韩1区2区| 亚洲国产综合在线看不卡| 久久精品国产亚洲高清剧情介绍| 亚洲免费电影在线| 老巨人导航500精品|