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

pku 1222 EXTENDED LIGHTS OUT 高斯消元

題意:
一個5*6的開關矩陣,撥動每個開關,都會使得它本身以及前后左右四個開關反轉。現在給出所有開關的初始狀態,問使得所有開關處于關狀態,需要撥動的開關。

解法:
首先看到這題就應該想到方程組。或者說,是一個模2方程組。
但是,這個會給我們帶來求解的麻煩。求解方程組有經典的高斯消元法,但是出現模運算,確實讓人頭疼。這里,我們想到了異或運算,聯系高斯消元的本質,是用一個方程來代換另外一個方程,十進制模二運算中的加、減運算與二進制中的異或運算正好對應!然后下面的事情就簡單多了

有一個小技巧,使用位運算能夠大大簡化編程復雜度。
可以將原來矩陣的每一行壓縮成一個32位整數,這樣每次消元的過程中選擇列主元的過程可以用排序輕松解決~,然后消去的過程和回代的過程也就非常好實現了。用這種方法,這題的代碼量可以控制在60行以內。
忽然想起了老隊長說過的話:100行以內的程序才是正解,做了這么多題,越來越發現這句話是多么的經典。話說現在郭老大在馬化騰那應該算個紅人了~

還有件很囧的事,使用STL里的greater仿函數竟然要包括一個叫functional的頭文件,甚是詭異。。

代碼:
 1 # include <cstdio>
 2 # include <algorithm>
 3 # include <functional>
 4 # include <cstring>
 5 using namespace std;
 6 inline void setbit(int &num,int bit)
 7 {
 8     num|=1<<(30-bit);
 9 }
10 inline bool getbit(int &num,int bit)
11 {
12     if(num&(1<<(30-bit))) return true;
13     else return false;
14 }
15 int main()
16 {
17     int test;
18     scanf("%d",&test);
19     for(int t=1;t<=test;t++)
20     {
21         int e[30];
22         memset(e,0,sizeof(e));
23         for(int i=0;i<30;i++)
24         {
25             int tmp;
26             scanf("%d",&tmp);
27             setbit(e[i],i);
28             if(i%6!=0) setbit(e[i],i-1);
29             if(i%6!=5) setbit(e[i],i+1);
30             if(i/6!=0) setbit(e[i],i-6);
31             if(i/6!=4) setbit(e[i],i+6);
32             if(tmp) setbit(e[i],30);
33         }
34         for(int i=0;i<30;i++)//消元
35         {
36             sort(e+i,e+30,greater<int>());
37             if(getbit(e[i],i))
38                 for(int j=i+1;j<30;j++)
39                     if(getbit(e[j],i))
40                         e[j]^=e[i];
41             
42         }
43         for(int i=29;i>=0;i--)//回代
44             if(getbit(e[i],i))
45               for(int j=i-1;j>=0;j--)
46                   if(getbit(e[j],i))
47                       e[j]^=e[i];
48         printf("PUZZLE #%d\n",t);
49         for(int i=0;i<30;i++)
50         {
51            if(e[i])
52              printf("%d",getbit(e[i],30));
53            else printf("0");
54            if(i%6==5) printf("\n");
55            else printf(" ");
56         }
57     }
58     return 0;
59 }



posted on 2011-01-16 01:35 yzhw 閱讀(366) 評論(0)  編輯 收藏 引用 所屬分類: combination math

<2010年11月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

導航

統計

公告

統計系統

留言簿(1)

隨筆分類(227)

文章分類(2)

OJ

最新隨筆

搜索

積分與排名

最新評論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久亚洲综合色| 欧美紧缚bdsm在线视频| 国产精品羞羞答答| 久久av免费一区| 免播放器亚洲一区| 亚洲欧美日韩直播| 久久精品视频导航| 妖精成人www高清在线观看| 欧美一区二区三区四区视频| 亚洲精品乱码久久久久久蜜桃91| 亚洲一二区在线| 亚洲欧洲精品一区二区三区波多野1战4 | 巨胸喷奶水www久久久免费动漫| 久久综合网络一区二区| 亚洲免费视频成人| 欧美成人激情视频| 久久青草福利网站| 国产精品日韩在线观看| 亚洲精品一二三区| 亚洲国产成人一区| 欧美一区国产二区| 欧美一站二站| 欧美日韩精品伦理作品在线免费观看 | 欧美在线3区| 亚洲性人人天天夜夜摸| 欧美国产第一页| 欧美va日韩va| 在线观看亚洲精品| 久久久不卡网国产精品一区| 欧美亚洲视频在线观看| 欧美性生交xxxxx久久久| 亚洲国产日韩在线一区模特| 国产一区二三区| 亚洲欧美成人一区二区三区| 亚洲午夜极品| 欧美日韩一区精品| 日韩一级在线观看| 亚洲午夜一区| 欧美色另类天堂2015| 99热在线精品观看| 亚洲在线不卡| 国产精品区一区二区三区| 亚洲一区二区成人| 欧美在线地址| 国产三级欧美三级| 午夜精品一区二区三区四区 | 欧美国产日韩a欧美在线观看| 免费视频亚洲| 亚洲国产精品999| 欧美aⅴ一区二区三区视频| 欧美成人精品一区| 亚洲乱码国产乱码精品精可以看 | 欧美二区在线播放| 欧美亚洲第一区| 永久免费精品影视网站| 久久精品综合网| 女人香蕉久久**毛片精品| 韩国精品在线观看| 久久久久se| 亚洲福利av| 亚洲视频精品| 国产精品日日摸夜夜摸av| 性色av一区二区三区红粉影视| 久久久精品日韩欧美| 亚洲第一在线视频| 欧美伦理影院| 亚洲欧美日韩综合aⅴ视频| 久久久青草青青国产亚洲免观| 伊人久久噜噜噜躁狠狠躁| 男男成人高潮片免费网站| 日韩视频在线你懂得| 午夜精品免费在线| 黄色小说综合网站| 欧美精品在线极品| 午夜伦理片一区| 亚洲电影免费观看高清完整版| 亚洲深夜福利| 韩国美女久久| 欧美视频不卡中文| 久久国产精品99国产| 亚洲国产成人一区| 先锋亚洲精品| 亚洲国产欧美久久| 国产精品私人影院| 欧美+日本+国产+在线a∨观看| 一二三区精品福利视频| 久久性天堂网| 亚洲一区二区伦理| 最新亚洲一区| 国产一区二区精品丝袜| 欧美精品日韩www.p站| 欧美亚洲一区二区在线| 亚洲乱码国产乱码精品精| 久久久久久久网| 亚洲图片欧美一区| 亚洲人成绝费网站色www| 国产日韩精品入口| 欧美日韩午夜在线视频| 久久久精品一品道一区| 中文在线不卡视频| 亚洲国内自拍| 美女国产精品| 欧美在线999| 亚洲视频在线看| 91久久国产自产拍夜夜嗨| 国产日韩欧美一区在线 | 免费高清在线视频一区·| 亚洲一区在线视频| 91久久夜色精品国产网站| 国产丝袜一区二区| 国产精品久久久久久一区二区三区 | 在线免费不卡视频| 国产性天天综合网| 欧美视频第二页| 欧美精品一区在线| 欧美成人综合一区| 美脚丝袜一区二区三区在线观看 | 欧美一区二区三区婷婷月色| 99在线精品观看| 亚洲国产一成人久久精品| 国内视频一区| 国产精品乱人伦一区二区 | 欧美日韩一区二区三区在线| 久久久精彩视频| 欧美影院一区| 欧美一级在线视频| 午夜精品久久久久99热蜜桃导演| 在线性视频日韩欧美| 夜夜嗨av一区二区三区四季av| 亚洲精品日韩在线观看| 亚洲九九九在线观看| 亚洲精品久久久久| 亚洲国产精品一区二区www| 亚洲二区在线| 亚洲日本欧美日韩高观看| 亚洲第一精品夜夜躁人人爽| 欧美凹凸一区二区三区视频| 麻豆精品视频在线| 卡通动漫国产精品| 欧美成人dvd在线视频| 麻豆freexxxx性91精品| 免费精品99久久国产综合精品| 欧美不卡高清| 亚洲黑丝在线| 日韩一级成人av| 亚洲视频第一页| 亚洲视频免费看| 性欧美xxxx大乳国产app| 久久本道综合色狠狠五月| 久久久久国色av免费观看性色| 久久久夜色精品亚洲| 欧美电影在线| 欧美午夜宅男影院| 国产日韩精品在线观看| 一区二区三区中文在线观看| 亚洲第一区中文99精品| 亚洲美女电影在线| 亚洲男女自偷自拍| 久久精品国产免费看久久精品| 美女国产精品| 99精品国产福利在线观看免费| 亚洲午夜性刺激影院| 久久国产手机看片| 欧美成人资源| 国产欧美亚洲日本| 亚洲破处大片| 亚洲欧美www| 狂野欧美一区| 99国产成+人+综合+亚洲欧美| 欧美一区免费视频| 欧美日韩不卡视频| 激情国产一区| 亚洲在线免费视频| 欧美成人免费全部| 亚洲午夜高清视频| 理论片一区二区在线| 欧美性开放视频| 亚洲国产日韩欧美| 校园激情久久| 亚洲黄色影院| 小处雏高清一区二区三区 | 欧美大片18| 亚洲视频第一页| 欧美国产日韩xxxxx| 国产亚洲欧美aaaa| 一卡二卡3卡四卡高清精品视频| 久久精品理论片| 日韩午夜剧场| 久久久久久亚洲精品中文字幕 | 亚洲精品一区二区三区av| 久久精品国产99国产精品| 国产精品porn| 亚洲乱码国产乱码精品精98午夜 | 国产欧美精品日韩精品| 99re成人精品视频| 美女福利精品视频| 午夜宅男欧美| 欧美午夜精品久久久久久久| 亚洲激情六月丁香| 久久精品夜色噜噜亚洲a∨|