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

            糯米

            TI DaVinci, gstreamer, ffmpeg
            隨筆 - 167, 文章 - 0, 評(píng)論 - 47, 引用 - 0
            數(shù)據(jù)加載中……

            POJ 1230 Pass-Muraille 貪心

            思路:

            考慮最左邊的需要移除墻的列。這列是必定要移除一些墻的。
            不妨移除右邊界較大的那些墻。

            實(shí)現(xiàn)的時(shí)候,可以用基數(shù)排序的方式來(lái)找到右邊界較大的墻。
            開(kāi)兩個(gè)數(shù)組如下:
            map[i][j] = { 第i列中,從該列開(kāi)始向右延伸,長(zhǎng)度為j的墻的數(shù)目}
            cnt[i] = {第i列中墻的數(shù)目}
            這樣代碼比較方便,速度也快。

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

            int T, N, K;
            char map[128][128];
            int cnt[128];

            int main()
            {
                
            int x1, x2, y;
                
            int i, j, i2, j2, ans;

                scanf(
            "%d"&T);
                
            while (T--{
                    scanf(
            "%d%d"&N, &K);
                    memset(map, 
            0sizeof(map));
                    memset(cnt, 
            0sizeof(cnt));
                    
            while (N--{
                        scanf(
            "%d%d%d%d"&x1, &y, &x2, &y);
                        
            if (x1 > x2) {
                            x1 
            ^= x2;
                            x2 
            ^= x1;
                            x1 
            ^= x2;
                        }

                        
            for (i = x1; i <= x2; i++{
                            map[i][x2 
            - i + 1]++;
                            cnt[i]
            ++;
                        }

                    }

                    ans 
            = 0;
                    
            for (i = 0; i <= 100; i++{
                        
            if (cnt[i] <= K)
                            
            continue;
                        
            for (j = 100; cnt[i] > K && j > 0; j--{
                            
            while (cnt[i] > K && map[i][j]) {
                                i2 
            = i;
                                j2 
            = j;
                                
            while (j2) {
                                    map[i2][j2]
            --;
                                    cnt[i2]
            --;
                                    j2
            --;
                                    i2
            ++;
                                }

                                ans
            ++;
                            }

                        }

                    }

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


                
            return 0;
            }

            posted on 2010-05-24 23:20 糯米 閱讀(874) 評(píng)論(0)  編輯 收藏 引用 所屬分類: POJ

            中文字幕一区二区三区久久网站| 日本加勒比久久精品| 久久www免费人成看片| 久久久久亚洲精品日久生情 | 久久婷婷激情综合色综合俺也去| 精品蜜臀久久久久99网站| 91久久成人免费| 欧美丰满熟妇BBB久久久| 久久se精品一区二区| 亚洲人成电影网站久久| 亚洲精品高清国产一久久| 狠狠色丁香久久婷婷综合蜜芽五月| 狠狠色丁香婷婷综合久久来| 久久久久久久久66精品片| 国产成人精品久久一区二区三区av| 久久精品成人欧美大片| 一本色综合久久| 国产精品丝袜久久久久久不卡| 久久亚洲精精品中文字幕| 亚洲精品午夜国产va久久 | 一本久道久久综合狠狠躁AV| …久久精品99久久香蕉国产| 久久精品国产免费观看| 欧美一级久久久久久久大| 久久精品国产亚洲麻豆| 日韩精品久久无码人妻中文字幕| 热久久视久久精品18| 欧美亚洲国产精品久久久久| 久久中文字幕视频、最近更新| 亚洲国产成人久久综合碰碰动漫3d | 热99RE久久精品这里都是精品免费| 99久久国产亚洲高清观看2024 | 97精品依人久久久大香线蕉97| 久久婷婷五月综合色99啪ak| 久久精品国产亚洲一区二区三区| 91精品久久久久久无码| 丰满少妇人妻久久久久久4| 国产高清国内精品福利99久久| 精品久久久久中文字幕一区| 国产精品免费久久| 日韩影院久久|