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

pku_3254_Corn Fields

 

pku_3254_Corn Fields

【題目概述】告訴平面上一些點(diǎn),從中選擇部分點(diǎn)出來,要求不能選擇相鄰的點(diǎn),求所有的方案數(shù)。

【題目分析】學(xué)過gohstwei的代碼風(fēng)格之后,第一道小練兵。花的時(shí)間雖然長(zhǎng)了點(diǎn),但是,感覺還不錯(cuò)。

1.         首先還是分析采取由上而下,逐行分析的策略。

2.         我們發(fā)現(xiàn),影響當(dāng)前行的狀態(tài)的只有上一行,即上一行和下一行的要滿足相鄰不相等原則。

3.         設(shè) 表示前i行的方案數(shù),且第i行的狀態(tài)為s.

轉(zhuǎn)移方程:

 

(其中,t為上一行的某個(gè)與當(dāng)前行不相沖突的狀態(tài))

4.         時(shí)間復(fù)雜度為 顯然這樣的復(fù)雜度為不滿足條件的。因此需要優(yōu)化

5.         我們發(fā)現(xiàn),題目中有一個(gè)限制的條件是沒用到的。就是同一行也不滿足相鄰不可取的。由此,我們可以實(shí)現(xiàn)預(yù)處理,剔除掉多余的狀態(tài),這樣,最后的每行合法的狀態(tài),最多只有367個(gè)。

【題目代碼】下面是AC的代碼。

//Name: pku_3254_Corn Fields

#include <iostream>

using namespace std;

const int maxs = 1<<12;

const int mod = 100000000;

int map[13][13], n, m;

int stk[maxs], sn;

int dp[2][maxs];

inline bool one(int i, int j) { return (i&(~(1<<j))) != i;}

bool check(int i, int j) {

    if (j > 0 && one(i, j-1)) return 0;

    if (j < m-1 && one(i, j+1)) return 0;

    return 1;

}

void Proced(int km, int m) {

    sn = 0; int i, j;

    for (i = 0,j; i < km; i++) {

        for (j = 0; j < m; j++)

            if(one(i, j) && !check(i,j)) break;

        if (j == m) stk[sn++] = i;

    }

   // for (i = 0; i < sn; i++) printf("stk[%d] = %d\n", i, stk[i]);

}

void SCDP() {

    int i, j, s1, s2, k1, k2, e1 = 0, e2 = 1;

    for (j = 0; j < sn; j++) dp[0][stk[j]] = 0;

    dp[0][0] = 1;

    for (i = 1; i <= n; i++) {

        for (j = 0; j < sn; j++) dp[e2][stk[j]] = 0;

        for (k1 = 0; k1 < sn; k1++) {

            for (k2 = 0; k2 < sn; k2++) {

                 s1 = stk[k1]; s2 = stk[k2];

                 if(s1 & s2)continue;

                 for(j = 0; j < m; j++)

                    if (!map[i][j] && one(s2, j)) break;

                 if (j == m) {

                    dp[e2][s2] = (dp[e2][s2]+dp[e1][s1])%mod;

                }

            }

        }

        e1 ^= 1; e2 ^= 1;

    }

    int ans = 0;

    for (k1 = 0; k1 < sn; k1++)

        ans = (ans + dp[e1][stk[k1]])%mod;

    printf("%d\n", ans);

}

int main() {

    freopen("in.in", "r", stdin);

    scanf("%d %d", &n, &m);

    Proced(1<<m, m);

    for(int i = 1; i <= n; i++)

        for (int j = 0; j < m; j++)

             scanf("%d", map[i]+j);

    SCDP();

    return 0;

}

posted on 2010-08-09 12:26 小志 閱讀(382) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2010年8月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
2930311234

導(dǎo)航

統(tǒng)計(jì)

常用鏈接

留言簿

隨筆檔案(8)

文章檔案(1)

相冊(cè)

收藏夾

ACM --- Online Judge

小志

最新隨筆

積分與排名

最新隨筆

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久先锋影音av| 欧美午夜在线观看| 亚洲欧美日韩综合| 欧美偷拍一区二区| 国产精品99久久久久久宅男 | 亚洲香蕉伊综合在人在线视看| 久久久精品性| 久久伊人精品天天| 一区二区av在线| 亚洲一区二区伦理| 精品成人国产在线观看男人呻吟| 久久久高清一区二区三区| 亚洲一区在线观看免费观看电影高清| 欧美日韩亚洲激情| 久久精品视频网| 欧美中文字幕久久| 亚洲清纯自拍| 亚洲视频图片小说| 在线观看国产精品网站| 99re在线精品| 在线观看三级视频欧美| 欧美电影在线免费观看网站| 欧美日韩国产一区二区三区地区| 欧美一区1区三区3区公司| 国产精品久久久久一区二区三区共| 欧美一区=区| 欧美日韩美女一区二区| 久久一二三国产| 国产精品一区毛片| 99亚洲视频| 欧美在线国产| 亚洲一区二区成人在线观看| 久久精品国产99| 欧美一区二区三区在线观看| 欧美日本免费| 亚洲成色777777女色窝| 国产一区二区三区网站| 亚洲欧美中文另类| 先锋资源久久| 一片黄亚洲嫩模| 欧美日韩国产999| 老鸭窝亚洲一区二区三区| 久久久蜜桃一区二区人| 美女久久一区| 亚洲精品乱码久久久久久蜜桃91 | 亚洲欧美资源在线| 欧美精品系列| 亚洲视频axxx| 久久九九免费| 亚洲高清资源| 欧美日韩亚洲综合| 亚洲欧美日韩精品| 欧美日韩成人激情| 亚洲裸体俱乐部裸体舞表演av| 一区二区三区久久网| 国产日韩综合| 欧美精品九九| 久久精品人人爽| 日韩视频在线观看| 免费影视亚洲| 欧美亚洲网站| 亚洲一区二区三区在线看| 国产真实乱偷精品视频免| 久久综合九色九九| 午夜亚洲精品| 午夜精品免费| 久久伊伊香蕉| 亚洲欧美在线一区二区| 玉米视频成人免费看| 国产精品久久国产精麻豆99网站| 亚洲欧美一区二区精品久久久| 欧美成人精品一区二区三区| 亚洲欧美一区二区在线观看| 亚洲国产欧美一区二区三区同亚洲| 欧美日韩在线不卡一区| 免费成年人欧美视频| 亚洲一品av免费观看| 亚洲人成绝费网站色www| 香蕉久久夜色精品国产| 一区二区久久| 一区二区精品| 亚洲无亚洲人成网站77777| 91久久中文字幕| 亚洲欧洲免费视频| 亚洲国产高清一区| 亚洲激情第一页| 9国产精品视频| 欧美劲爆第一页| 免费日韩视频| 欧美母乳在线| 国产精品久久久久婷婷| 国产精品一区二区你懂得 | 亚洲夜晚福利在线观看| 亚洲性人人天天夜夜摸| 亚洲亚洲精品在线观看 | 亚洲日本成人网| 国产精品高精视频免费| 麻豆精品视频在线观看| 欧美激情成人在线| 麻豆久久婷婷| 国产精品区二区三区日本| 国产日本欧美一区二区三区在线| 国产精品三级视频| 在线观看一区欧美| 宅男在线国产精品| 久久精品99| 99精品国产在热久久下载| 午夜精品福利电影| 欧美日韩高清免费| 精品999久久久| 午夜精品国产精品大乳美女| 欧美69视频| 久久久久国产精品厨房| 国产精品社区| 午夜精品视频在线| 亚洲视频高清| 国产精品啊啊啊| 一区二区三区久久| 午夜久久黄色| 亚洲午夜成aⅴ人片| 久久av免费一区| 亚洲一区二区免费看| 欧美福利在线| 亚洲精品日本| 亚洲精品美女免费| 免费在线视频一区| 亚洲日韩欧美视频| 亚洲日本欧美在线| 欧美精品黄色| 亚洲深夜福利| 欧美一区二区国产| 黑人巨大精品欧美一区二区| 久久女同互慰一区二区三区| 午夜一区在线| 最新亚洲视频| 亚洲午夜电影在线观看| 国产精品久久久久久五月尺| 午夜视频在线观看一区| 亚洲在线观看视频网站| 国产午夜精品全部视频在线播放| 久久精品中文字幕免费mv| 久久久欧美精品sm网站| 一本久道久久综合婷婷鲸鱼| 亚洲在线成人精品| 亚洲欧洲综合| 亚洲女同在线| 亚洲国产精品成人精品| 在线亚洲电影| 亚洲美女网站| 久久精品人人做人人爽| 亚洲裸体在线观看| 午夜在线一区二区| 9久草视频在线视频精品| 欧美怡红院视频一区二区三区| 久久久精品国产99久久精品芒果| 亚洲伦理在线观看| 久久性天堂网| 狂野欧美一区| 国产亚洲精品激情久久| 日韩视频在线观看免费| 亚洲毛片在线观看| 麻豆久久婷婷| 亚洲激情一区二区三区| 亚洲电影观看| 久久久精品999| 欧美第十八页| 亚洲人人精品| 亚洲国内高清视频| 亚洲美女淫视频| 久久综合九色综合久99| 欧美激情中文字幕一区二区| 国产日韩精品一区二区浪潮av| 一本久久综合| 国产欧美一区二区精品秋霞影院| 亚洲日本理论电影| 午夜精品一区二区三区四区| 国产亚洲福利社区一区| 欧美一区二视频| 欧美国产视频日韩| 亚洲欧美日韩精品久久| 亚洲精品久久久久久久久久久| 亚洲欧美日韩一区在线观看| 免费91麻豆精品国产自产在线观看| 欧美大片免费观看在线观看网站推荐| 国内自拍亚洲| 久久婷婷人人澡人人喊人人爽| 亚洲激情成人在线| 午夜精品久久久久久久99黑人| 国模 一区 二区 三区| 女人天堂亚洲aⅴ在线观看| 99天天综合性| 久久亚洲春色中文字幕| av成人手机在线| 欧美成人免费在线观看| 99视频+国产日韩欧美| 久久中文精品| 亚洲小少妇裸体bbw| 极品裸体白嫩激情啪啪国产精品| 欧美日韩亚洲国产一区| 久久久999精品免费|