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

            ?

            #include? < stdio.h >
            #include?
            < stdlib.h >
            #include?
            < string .h >

            int ? const ?inf = ? 1 << 29 ;
            int ?n;
            struct ?Point {
            ????
            int ?Lx,?Ly,?Rx,?Ry;
            }
            ;

            Point?pnt[
            16 ];
            int ??need[ 16 ],?dp[ 1 << 15 ][ 15 ],?color[ 16 ];

            void ?init() {
            ????
            for (? int ?i = ? 0 ;?i <= ?n;? ++ i?)?need[i] = ? 0 ;
            ????
            ????
            for (? int ?i = ? 0 ;?i < ?n;? ++ i?) {
            ????????
            for ( int ?j = ? 0 ;?j < ?n;? ++ j?) {
            ????????????
            if (?i == ?j?)? continue ;

            ????????????
            if (?pnt[j].Ry <= ?pnt[i].Ly? && ?pnt[j].Lx < ?pnt[i].Rx?) {
            ????????????????need[i]
            |= ?( 1 << j);
            ????????????}

            ????????}

            ????}

            }


            void ?solve() {
            ????
            for (? int ?i = ? 0 ;?i < ?( 1 << n);? ++ i?)
            ????????
            for ( int ?j = ? 0 ;?j < ?n;? ++ j?)?dp[i][j] = ?inf;

            ????dp[
            0 ][ 0 ] = ? 0 ;
            ????
            for (? int ?i = ? 0 ;?i < ?n;? ++ i?)
            ????????
            if (?need[i] == ? 0 ?)?dp[ 1 << i][i] = ? 1 ;
            ????
            ????
            for (? int ?s = ? 0 ;?s < ?( 1 << n);? ++ s?) {
            ????????
            for (? int ?i = ? 0 ;?i < ?n;? ++ i?) {
            ????????????
            if (?(?s & ?( 1 << i)?) == ? 0 ?)? continue ;

            ????????????
            for (? int ?j = ? 0 ;?j < ?n;? ++ j?) {
            ????????????????
            if (?s & ?( 1 << j)?)? continue ;
            ????????????????
            if (?(s & ?need[j]) != ?need[j]?)? continue ;

            ????????????????
            if (?dp[s][i] + ?(?color[i] != ?color[j]?) < ?dp[s | ( 1 << j)][j]?) {
            ????????????????????dp[s
            | ( 1 << j)][j] = ?dp[s][i] + ?(?color[i] != ?color[j]?);
            ????????????????}

            ????????????}

            ????????}

            ????}


            ????
            int ?ans = ?inf;
            ????
            for (? int ?i = ? 0 ;?i < ?n;? ++ i?)
            ????????
            if (?dp[( 1 << n) - 1 ][i] < ?ans?)?ans = ?dp[( 1 << n) - 1 ][i];

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


            int ?main() {
            ????
            int ?test;
            ????scanf(
            " %d " , & test?);

            ????
            while (?test -- ?) {
            ????????scanf(
            " %d " , & n?);

            ????????
            for (? int ?i = ? 0 ;?i < ?n;? ++ i?) {
            ????????????scanf(
            " %d%d%d%d " ,? & pnt[i].Ly,? & pnt[i].Lx,? & pnt[i].Ry,?? & pnt[i].Rx?);
            ????????????scanf(
            " %d " ,?color + ?i?);
            ????????}


            ????????init();
            ????????solve();
            ????}

            ????
            ????
            return ? 0 ;
            }

            posted on 2009-10-08 14:54 Darren 閱讀(648) 評論(0)  編輯 收藏 引用 所屬分類: 動態規劃
            久久这里只精品国产99热| 久久久国产亚洲精品| 精品久久一区二区| 国产真实乱对白精彩久久| 久久男人中文字幕资源站| 国产aⅴ激情无码久久| 久久er热视频在这里精品| 久久久久99精品成人片三人毛片| 国产成人久久精品区一区二区| 91精品国产色综久久| 中文字幕久久波多野结衣av| 亚洲国产精品高清久久久| 国产精品成人精品久久久| 国产香蕉久久精品综合网| 国产精品久久亚洲不卡动漫| 久久99精品久久久久久齐齐| 人妻无码αv中文字幕久久| 久久精品18| 国产成人精品久久| 久久精品中文字幕无码绿巨人| 久久久久无码国产精品不卡| 久久精品亚洲日本波多野结衣| 久久强奷乱码老熟女| 91久久婷婷国产综合精品青草| 久久精品中文字幕一区| 国产精品午夜久久| 久久国产精品国产自线拍免费 | 久久99精品国产99久久6男男| 精品久久国产一区二区三区香蕉| 久久国产色AV免费观看| 伊人久久无码中文字幕| 久久综合九色欧美综合狠狠| 精品国产青草久久久久福利 | 久久五月精品中文字幕| 天天综合久久久网| 久久国产精品久久| 精品无码久久久久久午夜| A级毛片无码久久精品免费| 久久这里都是精品| 中文字幕亚洲综合久久菠萝蜜| 久久久精品日本一区二区三区|