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

            infinity

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              36 隨筆 :: 0 文章 :: 25 評(píng)論 :: 0 Trackbacks
            用16個(gè)為存儲(chǔ)棋盤的狀態(tài),BFS時(shí),每次枚舉所有可能的變換。




            Source Code

            Problem: 1753
            User: lovecanon
            Memory: 732K
            Time: 32MS
            Language: C
            Result: Accept
            • Source Code

            • #include<stdio.h>
              #include
              <string.h>
              unsigned 
              int queue[65536],vis[65536],step[65536];
              int main()
              {
                  unsigned 
              int i,j,k=1<<15,front=0,rear=0,cnt,tmp;
                  queue[
              ++rear]=0;
                  
              for(i=0;i<4;i++)
                  {
                      
              for(j=0;j<4;j++)
                      {    
                          queue[rear]
              +=(getchar()=='b')*k;
                          k
              >>=1;
                      }
                      getchar();
                  }
                  
              if(queue[rear]==0||queue[rear]==65535) {printf("0\n");return 0;}
                  step[queue[rear]]
              =0;
                  memset(vis,
              0,sizeof(vis[0]));
                  vis[queue[rear]]
              =1;
                  
              while(front<rear)
                  {
                      cnt
              =queue[++front];
                      
              for(i=0;i<4;i++)
                          
              for(j=0;j<4;j++)
                          {   
                              tmp
              =cnt;
                              
              if(i==0)  tmp^=0x1<<(11-4*i-j);
                              
              else if(i==3)  tmp^=0x1<<(19-4*i-j);
                              
              else {tmp^=0x1<<(19-4*i-j);tmp^=0x1<<(11-4*i-j);}
                              
              if(j==0)  tmp^=0x3<<(14-4*i);   
                              
              else if(j==3)  tmp^=0x3<<(12-4*i);
                              
              else tmp^=0x7<<(14-4*i-j);    
                              
              if(tmp==0||tmp==65535) {printf("%d\n",step[cnt]+1); return 0;}
                              
              else if(!vis[tmp])
                              {queue[
              ++rear]=tmp; step[tmp]=step[cnt]+1;vis[tmp]=1;}
                          }
                  }   
                  printf(
              "Impossible\n");
                  
              return 0;
              }

            posted on 2008-09-20 04:29 infinity 閱讀(1256) 評(píng)論(2)  編輯 收藏 引用 所屬分類: acm

            評(píng)論

            # re: poj 1753 Flip Game 2009-08-07 13:22 longniu
            妙!   回復(fù)  更多評(píng)論
              

            # re: poj 1753 Flip Game 2010-04-14 15:08 祝你好運(yùn)
            寫的確實(shí)是不錯(cuò)!如果能加上注釋就更好了!  回復(fù)  更多評(píng)論
              

            三级韩国一区久久二区综合| 伊人久久大香线蕉AV色婷婷色| 99久久免费只有精品国产| 国产69精品久久久久9999| 午夜精品久久久久久久无码| 日韩精品久久无码中文字幕| 情人伊人久久综合亚洲| 亚洲国产精品无码久久久秋霞2| 久久99精品国产99久久6男男| 中文字幕精品无码久久久久久3D日动漫| 日韩久久久久久中文人妻| 亚洲国产精品综合久久一线| 久久精品这里热有精品| 久久久久亚洲国产| 国产激情久久久久影院| 久久久久久久亚洲Av无码| 伊人久久一区二区三区无码| 久久夜色精品国产亚洲| 久久久久久亚洲Av无码精品专口| 久久夜色精品国产| 99久久无码一区人妻| 精品久久无码中文字幕| 久久久久av无码免费网| 亚洲欧洲久久久精品| 香港aa三级久久三级老师2021国产三级精品三级在| 青草国产精品久久久久久| 综合人妻久久一区二区精品| 欧美午夜A∨大片久久| 热综合一本伊人久久精品| 三级片免费观看久久| 国产亚洲美女精品久久久| 国产免费久久精品99久久| 国产高潮久久免费观看| 国产99久久久久久免费看| 91精品日韩人妻无码久久不卡| 99国产精品久久久久久久成人热| 亚洲国产精品无码成人片久久| 亚洲人成精品久久久久| 国产精品无码久久久久久| 国产精品久久久天天影视| 国产精自产拍久久久久久蜜|