• <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>

            superman

            聚精會神搞建設 一心一意謀發展
            posts - 190, comments - 17, trackbacks - 0, articles - 0
               :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            ZOJ 1103 - Hike on a Graph

            Posted on 2008-04-07 10:58 superman 閱讀(439) 評論(0)  編輯 收藏 引用 所屬分類: ZOJ
             1 /* Accepted 1103 C++ 00:00.08 1188K */
             2 #include <queue>
             3 #include <iostream>
             4 
             5 using namespace std;
             6 
             7 struct Rec { int p1, p2, p3, cnt; };
             8 
             9 int main()
            10 {
            11     int n, p1, p2, p3;
            12     while((cin >> n) && n)
            13     {
            14         cin >> p1 >> p2 >> p3;
            15         
            16         char m[51][51];
            17         for(int i = 1; i <= n; i++)
            18             for(int j = 1; j <= n; j++)
            19                 cin >> m[i][j];
            20         
            21         Rec cur = {p1, p2, p3, 0};
            22         queue <Rec> rec;
            23         rec.push(cur);
            24         
            25         bool isRepeat[51][51][51= {false};
            26         isRepeat[p1][p2][p3] = true;
            27         bool find = false;
            28         
            29         while(rec.empty() == false)
            30         {
            31             cur = rec.front(); rec.pop();
            32             
            33             if(cur.p1 == cur.p2 && cur.p2 == cur.p3)
            34             {
            35                 cout << cur.cnt << endl;
            36                 find = true;
            37                 break;
            38             }
            39             
            40             for(int i = 1; i <= n; i++)
            41                 if(cur.p1 != i && m[cur.p1][i] == m[cur.p2][cur.p3])
            42                     if(isRepeat[i][cur.p2][cur.p3] == false)
            43                     {
            44                         isRepeat[i][cur.p2][cur.p3] = true;
            45                         Rec tmp = {i, cur.p2, cur.p3, cur.cnt + 1};
            46                         rec.push(tmp);
            47                     }
            48             for(int i = 1; i <= n; i++)
            49                 if(cur.p2 != i && m[cur.p2][i] == m[cur.p1][cur.p3])
            50                     if(isRepeat[cur.p1][i][cur.p3] == false)
            51                     {
            52                         isRepeat[cur.p1][i][cur.p3] == true;
            53                         Rec tmp = {cur.p1, i, cur.p3, cur.cnt + 1};
            54                         rec.push(tmp);
            55                     }
            56             for(int i = 1; i <= n; i++)
            57                 if(cur.p3 != i && m[cur.p3][i] == m[cur.p1][cur.p2])
            58                     if(isRepeat[cur.p1][cur.p2][i] == false)
            59                     {
            60                         isRepeat[cur.p1][cur.p2][i] = true;
            61                         Rec tmp = {cur.p1, cur.p2, i, cur.cnt + 1};
            62                         rec.push(tmp);
            63                     }
            64         }
            65         if(find == false)
            66             cout << "impossible" << endl;
            67     }
            68     
            69     return 0;
            70 }
            71 
            久久99久久99精品免视看动漫| 亚洲人成网亚洲欧洲无码久久 | 国产精品久久国产精品99盘| 99久久免费国产精精品| 久久男人中文字幕资源站| 国产成人久久精品一区二区三区 | 久久精品综合网| 国产精品久久久天天影视| 亚洲?V乱码久久精品蜜桃 | 91久久精一区二区三区大全| 久久高清一级毛片| 99精品久久精品| 欧美亚洲国产精品久久| 香港aa三级久久三级| 伊人色综合久久天天人手人婷 | 国产一区二区三精品久久久无广告 | 欧美日韩中文字幕久久久不卡| 色8久久人人97超碰香蕉987| 久久夜色精品国产亚洲av| 久久99精品国产一区二区三区| 亚洲国产日韩欧美综合久久| 久久精品国内一区二区三区| 亚洲国产精品无码久久一线| 久久婷婷色综合一区二区| 久久精品免费一区二区三区| 久久久久久久97| 久久99精品久久久久子伦| 久久亚洲精品无码VA大香大香| 精品99久久aaa一级毛片| 久久99精品久久久久久| MM131亚洲国产美女久久| 亚洲va中文字幕无码久久| 久久久久国产精品嫩草影院| 国产免费久久精品99re丫y| 中文字幕久久精品 | 欧美一级久久久久久久大| 国产香蕉97碰碰久久人人| 久久久久亚洲AV成人网| 青青草国产97免久久费观看| 中文字幕无码久久久| 久久久亚洲AV波多野结衣|