• <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
               :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            URAL 1060 - Flip Game

            Posted on 2008-04-16 02:34 superman 閱讀(352) 評論(0)  編輯 收藏 引用 所屬分類: URAL
             1 /* C++ Accepted 0.015 380 KB */
             2 #include <queue>
             3 #include <iostream>
             4 
             5 using namespace std;
             6 
             7 struct rec { int n, m; };
             8 
             9 int main()
            10 {
            11     int n = 0char c;
            12     for(int i = 0; i < 16; i++)
            13     {
            14         cin.get(c);
            15         if(c == '\n')
            16         {
            17             i--;
            18             continue;
            19         }
            20         if(c == 'b')
            21             n |= (1 << i);
            22     }
            23     
            24     rec cur = {n, 0};
            25     queue <rec> q;
            26     q.push(cur);
            27     
            28     bool repeat[65536= {false}, find = false;
            29     while(q.empty() == false)
            30     {
            31         cur = q.front(); q.pop();
            32         
            33         if(cur.n == 0 || cur.n == 65535)
            34         {
            35             cout << cur.m << endl;
            36             find = true;
            37             break;
            38         }
            39         
            40         for(int i = 0; i < 16; i++)
            41         {
            42             int t = cur.n;
            43             
            44             t ^= (1 << i);
            45             if(i - 4 >= 0)
            46                 t ^= (1 << (i - 4));
            47             if(i + 4 < 16)
            48                 t ^= (1 << (i + 4));
            49             if(i % 4 - 1 >= 0)
            50                 t ^= (1 << (i - 1));
            51             if(i % 4 + 1 < 4)
            52                 t ^= (1 << (i + 1));
            53             
            54             if(repeat[t] == false)
            55             {
            56                 repeat[t] = true;
            57                 rec tmp = {t, cur.m + 1};
            58                 q.push(tmp);
            59             }
            60         }
            61     }
            62     
            63     if(find == false)
            64         cout << "Impossible" << endl;
            65     
            66     return 0;
            67 }
            68 
            久久久精品久久久久久| 51久久夜色精品国产| 欧美激情精品久久久久久久九九九| 国产精品天天影视久久综合网| 久久久一本精品99久久精品66| 777久久精品一区二区三区无码| 久久天天躁狠狠躁夜夜av浪潮| 久久这里只有精品18| 久久久亚洲精品蜜桃臀| 久久亚洲精品国产精品| 三级韩国一区久久二区综合 | 久久久久久综合一区中文字幕| 日韩美女18网站久久精品| 久久久久久极精品久久久| 亚洲精品高清国产一线久久| 久久精品国产色蜜蜜麻豆| 99久久99这里只有免费费精品| 亚洲精品成人久久久| 激情综合色综合久久综合| 波多野结衣中文字幕久久| 久久久久国产精品嫩草影院| 久久久久久极精品久久久 | 无遮挡粉嫩小泬久久久久久久| 久久精品国产72国产精福利| 国产精品午夜久久| 久久亚洲国产精品一区二区| 久久久久久亚洲AV无码专区| 久久香综合精品久久伊人| 亚洲精品乱码久久久久久| 亚洲精品蜜桃久久久久久| 国产精品亚洲综合久久| 久久人人爽人人精品视频| 久久精品国产只有精品66| 久久久久久久综合综合狠狠| 精品久久久久久久久久中文字幕| 国产成人久久精品麻豆一区| 国产精品99久久不卡| 亚洲?V乱码久久精品蜜桃| 2021最新久久久视精品爱 | 99精品久久精品| 一本一道久久精品综合|