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

misschuer

常用鏈接

統(tǒng)計

積分與排名

百事通

最新評論

hdu 1195 Open the Lock

http://acm.hdu.edu.cn/showproblem.php?pid=1195

#include <iostream>
#include 
<queue>
using namespace std;

struct root
{
    
char data[ 5 ];
    
    
int step;
}
;

int visited[ 10000 ];

char ne[ 5 ] , ps[ 5 ];

int getdigit(char str[ ])
{
    
return (str[ 0 ] - '0'* 1000 + (str[ 1 ] - '0'* 100 + (str[ 2 ] - '0'* 10 + (str[ 3 ] - '0');
}


void bfs()
{
    
int i , k;
    
    
char change[ 5 ] , temp;
    
    queue
<root> Q;
    
    root p , q;
    
    strcpy(p.data , ne);
    
    p.step 
= 0;
    
    Q.push(p);
    
    
while (!Q.empty())
    
{
        q 
= Q.front();
        
        Q.pop();
        
        
if(strcmp(q.data , ps) == 0)
        
{
            cout 
<< q.step << endl;
            
            
break;
        }

        
        
for (i = 0 ; i < 4 ; ++ i)
        
{
            
if (i < 3)
            
{
                strcpy(change , q.data);
                
                temp 
= change[ i ];
                
                change[ i ] 
= change[i + 1];
                
                change[i 
+ 1= temp;
                
                k 
= getdigit(change);
                
                
if (visited[ k ] == 0)
                
{
                    visited[ k ] 
= 1;
                    
                    strcpy(p.data , change);
                    
                    p.step 
= q.step + 1;
                    
                    Q.push(p);
                }

                
                
            }

            
            
            
if (q.data[ i ] == '1')
            
{
                strcpy(change , q.data);
                
                change[ i ] 
= '9';
                
                k 
= getdigit(change);
                
                
if (visited[ k ] == 0)
                
{
                    visited[ k ] 
= 1;
                    
                    strcpy(p.data , change);
                    
                    p.step 
= q.step + 1;
                    
                    Q.push(p);
                }

                strcpy(change , q.data); 
                
                change[ i ] 
= '2';
                
                k 
= getdigit(change);
                
                
if (visited[ k ] == 0)
                
{
                    visited[ k ] 
= 1;
                    
                    strcpy(p.data , change);
                    
                    p.step 
= q.step + 1;
                    
                    Q.push(p);
                }

                
            }

            
            
else
                
if( q.data[ i ]  == '9')
                
{
                    
                    strcpy(change , q.data); 
                    
                    change[ i ] 
= '8';
                    
                    k 
= getdigit(change);
                    
                    
if (visited[ k ] == 0)
                    
{
                        visited[ k ] 
= 1;
                        
                        strcpy(p.data , change);
                        
                        p.step 
= q.step + 1;
                        
                        Q.push(p);
                    }

                    
                    strcpy(change , q.data); 
                    
                    change[ i ] 
= '1';
                    
                    k 
= getdigit(change);
                    
                    
if (visited[ k ] == 0)
                    
{
                        visited[ k ] 
= 1;
                        
                        strcpy(p.data , change);
                        
                        p.step 
= q.step + 1;
                        
                        Q.push(p);
                    }

                    
                }

                
                
else
                
{
                    strcpy(change , q.data); 
                    
                    change[ i ] 
= change[ i ] - 1;
                    
                    k 
= getdigit(change);
                    
                    
if (visited[ k ] == 0)
                    
{
                        visited[ k ] 
= 1;
                        
                        strcpy(p.data , change);
                        
                        p.step 
= q.step + 1;
                        
                        Q.push(p);
                    }

                    
                    strcpy(change , q.data); 
                    
                    change[ i ] 
= change[ i ] + 1;
                    
                    k 
= getdigit(change);
                    
                    
if (visited[ k ] == 0)
                    
{
                        visited[ k ] 
= 1;
                        
                        strcpy(p.data , change);
                        
                        p.step 
= q.step + 1;
                        
                        Q.push(p);
                    }

                    
                }
//else
                
        }
//for()
        
    }
//while()
    
}



int main()
{
    
int t;
    
    cin 
>> t;
    
    
while (t --)
    
{
        scanf (
"%s %s" , ne , ps);
        
        memset (visited , 
0 , sizeof (visited));
        
        bfs();
    }

    
    
return 23;
}

posted on 2009-04-19 10:42 此最相思 閱讀(375) 評論(0)  編輯 收藏 引用 所屬分類: bfs


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲精品视频免费观看| 性伦欧美刺激片在线观看| 久久久福利视频| 亚洲一区中文| 欧美香蕉大胸在线视频观看| 日韩视频精品在线观看| 亚洲国产精品一区制服丝袜| 欧美大片在线观看一区| 久久影院亚洲| 亚洲精品国产视频| 欧美黄色网络| 国产精品sss| 欧美jizzhd精品欧美巨大免费| 麻豆精品视频| 一区二区三区av| 一区二区三区蜜桃网| 国产欧美一区二区色老头| 老司机久久99久久精品播放免费| 欧美a级一区二区| 午夜精品福利一区二区蜜股av| 久久精品国产91精品亚洲| 亚洲精品免费网站| 久久中文精品| 美女国产精品| 国产精品va在线播放| 亚洲精品女人| 国产精品美女久久久浪潮软件| 香蕉成人伊视频在线观看 | 久久久国产午夜精品| 国产主播精品| 亚洲国产cao| 欧美私人网站| 欧美大片在线看免费观看| 韩国美女久久| 亚洲激情午夜| 国产麻豆午夜三级精品| 欧美激情精品| 亚洲破处大片| 亚洲欧美国产毛片在线| 亚洲国产精品久久久久婷婷老年| av成人免费观看| 国产揄拍国内精品对白| 欧美在线免费| 日韩视频免费看| 欧美高清日韩| 久久综合九九| 国产欧美高清| 亚洲欧美一区二区激情| 9色精品在线| 久久精品国产清高在天天线| 久久精品国产久精国产一老狼| 欧美第一黄色网| 久久人人精品| 欧美三级视频| 亚洲欧美另类中文字幕| 久久精品在线| 亚洲福利国产精品| 欧美日韩国产不卡| 欧美 日韩 国产 一区| 最新国产精品拍自在线播放| 欧美成人资源网| 亚洲女女做受ⅹxx高潮| 久久综合九色综合久99| 亚洲精品在线一区二区| 国产精品狼人久久影院观看方式| 久久国产精品久久久久久电车| 欧美国产日韩在线| 亚洲伊人网站| 欧美日韩亚洲激情| 99在线精品免费视频九九视| 欧美专区亚洲专区| 国内精品久久久久国产盗摄免费观看完整版 | 蜜桃久久av| 日韩午夜在线| 亚洲色图在线视频| 欧美久久一区| 一区二区黄色| 欧美国产91| 欧美自拍偷拍| 亚洲天堂成人在线观看| 国产免费观看久久黄| 欧美mv日韩mv国产网站| 欧美一区在线看| 制服诱惑一区二区| 欧美一区二区在线看| 国产精品一二三视频| 欧美成人69| 久久爱另类一区二区小说| 在线视频一区二区| 最近中文字幕mv在线一区二区三区四区| 久久er精品视频| 亚洲先锋成人| 国模精品一区二区三区色天香| 欧美日本亚洲| 欧美成人性生活| 久久这里有精品15一区二区三区| 亚洲一区二区在| 中文在线不卡视频| 亚洲毛片在线免费观看| 亚洲区欧美区| 欧美激情精品久久久久久蜜臀| 久久久久久久久久看片| 久久精品麻豆| 久久露脸国产精品| 久久精品五月| 久久手机免费观看| 欧美在线观看视频在线| 亚洲午夜激情网站| 亚洲大胆人体在线| 快播亚洲色图| 午夜在线播放视频欧美| 亚洲欧美另类在线| 欧美精品在线观看一区二区| 亚洲永久字幕| 亚洲淫性视频| 一区二区三区视频在线观看| 亚洲国产精品久久久久婷婷老年 | 国产精品久久久久婷婷| 欧美高清视频| 欧美激情中文字幕一区二区| 久久深夜福利免费观看| 亚洲一区二区在线观看视频| 一本久久青青| 在线亚洲伦理| 宅男精品导航| 亚洲午夜日本在线观看| av成人手机在线| 亚洲在线观看免费| 亚洲性线免费观看视频成熟| 国产精品99久久久久久久女警 | 亚洲精品在线免费观看视频| 欧美国产免费| 亚洲电影欧美电影有声小说| 欧美国产日产韩国视频| 亚洲福利视频专区| 亚洲婷婷综合色高清在线 | 日韩视频中文| 国产精品久久9| 国产日韩欧美视频在线| 国产日韩欧美在线播放| 国产一区二区三区在线观看视频 | 亚洲最快最全在线视频| 亚洲图片在线观看| 一区二区三区日韩精品| 欧美在线免费播放| 久久综合精品国产一区二区三区| 免费久久久一本精品久久区| 欧美激情aaaa| 亚洲美女性视频| 欧美一区二区三区视频| 久久躁日日躁aaaaxxxx| 欧美另类一区二区三区| 国产精品久久久一本精品| 在线观看欧美成人| 欧美黄免费看| 国产精品扒开腿做爽爽爽软件 | 久久久亚洲成人| 午夜精品免费在线| 久久综合一区| 欧美精品97| 一区二区三区我不卡| 亚洲毛片在线观看| 亚洲欧美在线观看| 麻豆成人在线| 亚洲福利视频专区| 欧美一区视频| 欧美久久视频| 国产综合久久久久久| 99re热这里只有精品视频| 午夜精品一区二区三区在线播放| 久久亚洲国产精品日日av夜夜| 亚洲国产欧美不卡在线观看| 亚洲日本乱码在线观看| 亚洲欧美高清| 欧美va亚洲va香蕉在线| 国产伦精品一区二区三区免费迷| 在线看不卡av| 午夜精品久久| 亚洲欧洲一区二区天堂久久| 久久嫩草精品久久久精品| 国产精品成人免费| 在线精品国产欧美| 欧美一区二区三区免费观看视频| 欧美激情女人20p| 久久嫩草精品久久久久| 国产精品久久久久久久电影| 亚洲精品乱码久久久久| 久久久久一区二区| 99精品国产99久久久久久福利| 免费在线日韩av| 国外视频精品毛片| 欧美亚洲免费| 亚洲一区二区三区欧美| 欧美日韩一区不卡| 亚洲人体一区| 欧美激情精品久久久久久蜜臀| 亚洲欧美国产一区二区三区| 欧美日韩综合| 国产精品99久久久久久久vr| 亚洲高清二区|