• <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 
            欧美一区二区精品久久| 精品多毛少妇人妻AV免费久久| 久久99热这里只有精品66| 久久精品亚洲AV久久久无码| 2021久久精品国产99国产精品| 精品久久久久国产免费| 亚洲综合伊人久久综合| 久久99精品久久久久久噜噜| 色偷偷偷久久伊人大杳蕉| 欧美一级久久久久久久大| 久久久久亚洲精品无码蜜桃| 亚洲一级Av无码毛片久久精品| 久久精品成人免费看| 国产精品99久久久精品无码| 国产精品亚洲美女久久久| 欧美一区二区三区久久综合| 久久伊人亚洲AV无码网站| 日韩精品国产自在久久现线拍| 久久人人爽人人爽人人片AV东京热| 亚洲综合婷婷久久| 久久ww精品w免费人成| 无码国产69精品久久久久网站| 久久精品无码一区二区三区免费 | 久久久久这里只有精品| 久久婷婷国产综合精品| 亚洲午夜久久久影院| 波多野结衣久久精品| 精品久久久久成人码免费动漫| 久久久久久亚洲精品不卡 | 欧美国产精品久久高清| 久久精品成人| 久久久久久亚洲精品不卡| 久久高潮一级毛片免费| 久久99久久无码毛片一区二区| 66精品综合久久久久久久| 日韩精品国产自在久久现线拍| 久久久91精品国产一区二区三区| www久久久天天com| 久久国产精品久久| 久久久91人妻无码精品蜜桃HD| 免费一级欧美大片久久网|