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

Onway

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

pku 1315 回溯法

Posted on 2010-12-17 10:10 Onway 閱讀(380) 評論(0)  編輯 收藏 引用 所屬分類: 傷不起的ACM
/*************************************************************************
*pku 1315 Don't Get Rooked
http://poj.org/problem?id=1315
題目分類:回溯法
題意:n*n的棋盤,類似n后問題,橫豎不能放兩個棋子,不同的是,少了\
對角線的限制,棋盤里多了分割橫行和豎行的墻。求最多能放棋子數。
思路:枚舉第一個棋子的位子,確定第一個棋子位置后,對后面的棋子用\
遞歸深搜(即回溯法)暴力求解剩下能放的棋子。題目的難點是進入深搜時\
的標記和回溯時撤銷標記的操作。
代碼附注:近段時間比較少做題,在標記操作里調試了很久,最后還感覺\
改得挺惡心的,代碼很臃腫。但交上去居然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>
            欧美一级久久久久久久大片| 亚洲精品一区二区三区蜜桃久| 国产精品第一页第二页第三页| 久久婷婷国产综合国色天香| 久久精品国产亚洲高清剧情介绍| 亚洲一区在线播放| 欧美女同视频| 六月婷婷久久| 欧美激情第二页| 欧美视频中文在线看 | 欧美激情导航| 国产精品极品美女粉嫩高清在线| 国产欧美日本一区二区三区| 国模一区二区三区| 亚洲三级视频| 午夜激情综合网| 另类尿喷潮videofree| 免费日韩成人| 一区二区三区日韩精品视频| 欧美在线免费观看视频| 欧美黄网免费在线观看| 国产欧美精品日韩区二区麻豆天美 | 91久久国产综合久久蜜月精品| 免费观看成人| 一区二区免费在线播放| 久久精品视频在线免费观看| 欧美日韩国产成人高清视频| 国内精品久久久久影院薰衣草 | 国产精品手机在线| 亚洲国产精品成人| 欧美一区2区三区4区公司二百| 噜噜爱69成人精品| 99这里只有精品| 久久综合网络一区二区| 国产精品美女久久久久久免费| 亚洲黄色av一区| 久久国产色av| 亚洲午夜一级| 欧美日韩免费区域视频在线观看| 红桃视频国产精品| 亚洲欧美在线免费| 日韩亚洲一区二区| 欧美aa国产视频| 国内精品模特av私拍在线观看| 一区二区三区成人| 亚洲成人在线网站| 久久久人成影片一区二区三区观看| 国产精品高精视频免费| 一区二区不卡在线视频 午夜欧美不卡在| 久久精品网址| 亚洲一区bb| 国产精品久久97| 日韩一级在线观看| 欧美国产日韩二区| 久久综合给合| 在线精品视频免费观看| 久久精品盗摄| 欧美在线精品免播放器视频| 亚洲在线播放电影| 亚洲精品资源美女情侣酒店| 欧美国产日本在线| 亚洲精品久久7777| 亚洲国产精品成人综合| 久久亚洲一区二区| 亚洲国产欧美在线| 亚洲黄色一区| 欧美日韩午夜在线| 亚洲一区日韩| 性欧美大战久久久久久久免费观看 | 久久久久一区二区三区| 欧美一区二区三区四区在线| 国产精品一区二区你懂得| 香蕉亚洲视频| 久久国产精品一区二区| 激情文学综合丁香| 亚洲第一在线综合网站| 欧美成人精品一区二区| 99在线热播精品免费| 一本色道久久综合亚洲精品小说| 欧美视频二区36p| 欧美在线一二三| 久久国产主播| 亚洲日本欧美| 亚洲一区二区视频| 韩日欧美一区二区| 亚洲欧洲三级电影| 国产精品一二一区| 玖玖综合伊人| 欧美日韩亚洲一区二区| 久久精品国语| 欧美激情视频网站| 欧美一区亚洲一区| 久久视频国产精品免费视频在线| 亚洲精品黄色| 欧美影院午夜播放| 夜夜爽99久久国产综合精品女不卡| 99精品国产热久久91蜜凸| 国产精品视频免费一区| 欧美成人久久| 国产精品一区久久久久| 麻豆成人小视频| 欧美日韩午夜视频在线观看| 久久综合伊人77777| 欧美日韩日本国产亚洲在线| 久久人人爽爽爽人久久久| 欧美日韩美女在线| 欧美不卡视频一区发布| 国产精品va在线| 欧美黑人在线观看| 国产婷婷97碰碰久久人人蜜臀| 理论片一区二区在线| 免费视频一区二区三区在线观看| 久久av一区二区| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 一区二区欧美日韩视频| 红桃视频国产精品| 亚洲一区二区网站| 亚洲美女少妇无套啪啪呻吟| 欧美一级播放| 中文欧美日韩| 亚洲国产午夜| 欧美一区二区三区视频免费| 中文精品99久久国产香蕉| 久久人人97超碰精品888| 性做久久久久久免费观看欧美| 欧美二区乱c少妇| 久久综合色天天久久综合图片| 国产精品三上| 一区二区三区国产| 一本色道久久综合亚洲精品婷婷 | 国产精品亚洲第一区在线暖暖韩国| 欧美高清视频免费观看| 国产亚洲成av人片在线观看桃| 亚洲老司机av| 99精品99久久久久久宅男| 女人天堂亚洲aⅴ在线观看| 久久综合亚洲社区| 国产视频一区在线| 亚洲一级二级在线| 中文网丁香综合网| 欧美精品一区在线观看| 欧美成ee人免费视频| 国内精品久久久久影院色| 久久精品女人| 麻豆精品91| 伊大人香蕉综合8在线视| 午夜精品久久久久| 久久国产手机看片| 韩国成人精品a∨在线观看| 欧美影院成人| 欧美激情自拍| 一本色道久久综合亚洲91| 欧美日韩免费高清一区色橹橹| 亚洲精品看片| 亚洲午夜高清视频| 国产精品久久久久久久7电影| 国产精品99久久99久久久二8| 午夜精品久久久久久久蜜桃app| 国产精品乱人伦一区二区| 亚洲在线网站| 久久香蕉国产线看观看av| 在线观看视频一区| 欧美激情2020午夜免费观看| 亚洲乱码一区二区| 西瓜成人精品人成网站| 亚洲第一区在线观看| 欧美黄网免费在线观看| 亚洲视频大全| 久久美女性网| 亚洲精品欧美精品| 国产精品伦理| 99国产精品视频免费观看一公开| 亚洲欧美电影院| 麻豆成人在线观看| 一区二区三区日韩在线观看| 国产精品国产| 久久天天躁狠狠躁夜夜av| 亚洲精一区二区三区| 欧美亚洲综合另类| 亚洲国产美国国产综合一区二区| 欧美日韩免费一区| 久久性天堂网| 亚洲一区久久久| 最新亚洲电影| 欧美在线视频观看| 日韩图片一区| 国产色综合久久| 欧美精品一区二区三| 亚洲网站视频| 亚洲国产电影| 国产日韩欧美精品一区| 欧美成年人网站| 亚洲欧美日韩国产成人精品影院| 欧美激情精品久久久久久黑人| 亚洲欧美在线播放| 亚洲美女视频网| 亚洲国产一区二区在线| 国产精品嫩草影院av蜜臀| 免播放器亚洲一区| 欧美专区中文字幕|