• <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 閱讀(655) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 動(dòng)態(tài)規(guī)劃
            精品久久久久久国产| 国产一级持黄大片99久久| 久久久亚洲裙底偷窥综合| 中文字幕日本人妻久久久免费| 日韩人妻无码精品久久免费一 | 亚洲精品无码久久毛片| 亚洲国产精品成人久久蜜臀| 国产婷婷成人久久Av免费高清| 久久国产精品免费一区二区三区| 精品久久久久久中文字幕大豆网| 久久久精品国产Sm最大网站| 久久一区二区三区99| 亚洲精品国精品久久99热一| 久久综合精品国产一区二区三区| 久久综合精品国产二区无码| 午夜精品久久久久久久无码| 久久久无码精品亚洲日韩按摩 | 狠狠88综合久久久久综合网| 女同久久| 久久99久久无码毛片一区二区| 日日躁夜夜躁狠狠久久AV| 精品久久久久久久久免费影院| 国产精品一区二区久久精品无码| 久久久久人妻一区精品色| 99精品国产综合久久久久五月天| 久久国产精品免费一区| 狠狠综合久久综合中文88| 国产精品久久自在自线观看| 人妻久久久一区二区三区| 久久久久亚洲AV无码专区首JN| 久久乐国产综合亚洲精品| 久久国产成人| 久久影视综合亚洲| 久久国产三级无码一区二区 | 亚洲国产精品无码久久一线| 国产一区二区久久久| 久久这里只有精品首页| 综合久久久久久中文字幕亚洲国产国产综合一区首 | 久久人妻少妇嫩草AV蜜桃| 7777精品久久久大香线蕉 | 国内精品久久久久影院优|