• <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 閱讀(641) 評論(0)  編輯 收藏 引用 所屬分類: 動態(tài)規(guī)劃
            伊人久久大香线蕉av一区| 久久久免费观成人影院| 99久久精品九九亚洲精品| 国产精品99久久久精品无码 | 久久99热这里只频精品6| 91久久精品无码一区二区毛片| 久久人人妻人人爽人人爽| 国产成人精品久久| 亚洲色欲久久久综合网东京热| 久久精品国产乱子伦| 久久www免费人成看片| 欧美精品国产综合久久| 亚洲国产另类久久久精品| 午夜精品久久久久久99热| 人人狠狠综合久久88成人| 无码专区久久综合久中文字幕 | 久久久久久亚洲AV无码专区 | 99久久99这里只有免费费精品| 久久国产色AV免费观看| 香蕉久久夜色精品国产小说| 国产福利电影一区二区三区久久久久成人精品综合 | 成人精品一区二区久久久| 国产视频久久| 久久精品国产乱子伦| 99久久人妻无码精品系列 | 久久91这里精品国产2020| 久久精品无码一区二区三区日韩 | 久久露脸国产精品| 久久精品国产亚洲av麻豆图片| 久久亚洲AV成人出白浆无码国产| 激情伊人五月天久久综合| 国内精品久久久久久久影视麻豆| 亚洲国产成人精品91久久久| 久久午夜夜伦鲁鲁片免费无码影视| 久久久久无码精品国产| 久久人人爽人人爽人人片AV麻豆| 思思久久精品在热线热| 情人伊人久久综合亚洲| 久久精品卫校国产小美女| 久久国产福利免费| 亚洲精品乱码久久久久久蜜桃图片|