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

糯米

TI DaVinci, gstreamer, ffmpeg
隨筆 - 167, 文章 - 0, 評論 - 47, 引用 - 0
數據加載中……

POJ 3168 Barn Expansion 快排

思路:

一開始想到用線段樹來做,但是發現坐標范圍異常的大,放一個都勉勉強強,更不用說幾個了!
想了一下,發現有一個至關重要的條件“不存在覆蓋的情況”。
那就沒必要用線段樹了,因為壓根就沒必要解決覆蓋問題。
可以用一種取巧的方法解決這題。



對于每個矩形,首先把它 y 方向的兩條邊抽取出來。
對于所有矩形的 y 方向的邊,先按照 x 排序,然后按照頂端的 y 坐標排序。



然后對于位于同一 x 坐標的邊,找出所有首尾相接或者有交集的邊。
那么這些邊對應的矩形必定要排除。

對于 x 方向的邊,作同樣的處理。

排除完之后,剩下的矩形就是可以答案了。

代碼 500 多ms。。
#include <stdio.h>
#include 
<stdlib.h>

#define MAX_N 25032

struct node {
    
int barn, start, end, idx;
}
;
struct node vert[MAX_N * 2], hori[MAX_N * 2];
char cannot[MAX_N];
int N, ans;

__inline 
void add_node(struct node *t, int barn, int start, int end, int idx)
{
    t
->barn = barn;
    t
->start = start;
    t
->end = end;
    t
->idx = idx;
}


int cmp_node(const void *a, const void *b)
{
    
struct node *p, *q;
    p 
= (struct node *)a;
    q 
= (struct node *)b;
    
if (p->idx != q->idx)
        
return p->idx - q->idx;
    
return p->start - q->start;
}


__inline 
void disable_barn(int barn)
{
    
if (!cannot[barn]) {
        cannot[barn] 
= 1;
        ans
--;
    }
 
}


__inline 
void calc(struct node *arr, int len)
{
    
int i, idx, end, cnt, first;

    i 
= 0;
    
while (i < len) {
        idx 
= arr[i].idx;
        end 
= arr[i].end;
        first 
= i;
        cnt 
= 0;
        i
++;
        
while (i < len && arr[i].idx == idx && arr[i].start <= end) {
            
if (arr[i].end > end)
                end 
= arr[i].end;
            disable_barn(arr[i].barn);
            cnt
++;
            i
++;
        }

        
if (cnt)
            disable_barn(arr[first].barn);
    }

}


int main()
{
    
int i, top, left, bottom, right;

    freopen(
"e:\\test\\in.txt""r", stdin);

    scanf(
"%d"&N);
    ans 
= N;
    
for (i = 0; i < N; i++{
        scanf(
"%d%d%d%d"&left, &bottom, &right, &top);
        add_node(
&vert[i * 2], i, bottom, top, left);
        add_node(
&vert[i * 2 + 1], i, bottom, top, right);
        add_node(
&hori[i * 2], i, left, right, top);
        add_node(
&hori[i * 2 + 1], i, left, right, bottom);
    }

    qsort(vert, N 
* 2sizeof(vert[0]), cmp_node);
    qsort(hori, N 
* 2sizeof(hori[0]), cmp_node);
    calc(vert, N 
* 2);
    calc(hori, N 
* 2);
    printf(
"%d\n", ans);

    
return 0;
}


posted on 2010-03-18 15:52 糯米 閱讀(656) 評論(0)  編輯 收藏 引用 所屬分類: POJ

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            老司机亚洲精品| 欧美电影免费观看高清| 国产精品日韩在线播放| 午夜亚洲福利在线老司机| 亚洲调教视频在线观看| 国产精品久久久久免费a∨| 亚洲一区二区少妇| 亚洲一区免费视频| 国产亚洲综合精品| 亚洲大片一区二区三区| 欧美成人午夜视频| 亚洲一二三区在线观看| 性欧美超级视频| 在线观看日韩国产| 亚洲精品综合| 国产日本欧美一区二区三区在线| 久久久久久网站| 欧美精品福利在线| 亚洲在线免费视频| 久久精品国产清高在天天线| 亚洲国产欧美日韩另类综合| 99国产一区| 国语精品一区| 亚洲美女视频网| 国产一区欧美| 亚洲精品综合| 狠狠色2019综合网| 一本色道精品久久一区二区三区 | 欧美精品导航| 久久国产精品99久久久久久老狼| 榴莲视频成人在线观看| 亚洲欧美清纯在线制服| 久久综合图片| 欧美亚洲综合另类| 农夫在线精品视频免费观看| 欧美一区二区日韩一区二区| 欧美精品97| 麻豆精品在线视频| 国产老肥熟一区二区三区| 亚洲国产精彩中文乱码av在线播放| 欧美性开放视频| 亚洲第一主播视频| 国产精品男女猛烈高潮激情| 欧美激情久久久| 狠狠色综合播放一区二区| 日韩视频在线永久播放| 亚洲激情在线激情| 欧美在线免费| 欧美在线影院| 国产精品一区久久久| 亚洲精品欧美专区| 亚洲激精日韩激精欧美精品| 欧美一区二区三区在线看| 亚洲自拍电影| 欧美日韩国产一区二区| 亚洲成色精品| 日韩视频在线观看| 亚洲高清视频在线| 久久人人爽爽爽人久久久| 久久精品99久久香蕉国产色戒| 欧美日韩一区高清| 9人人澡人人爽人人精品| 亚洲精品视频一区| 欧美激情精品久久久| 欧美国产亚洲视频| 亚洲国产三级在线| 欧美高清hd18日本| 亚洲日本国产| 亚洲作爱视频| 国产精品播放| 亚洲图片在区色| 久久riav二区三区| 国产亚洲精品美女| 久久九九电影| 男女视频一区二区| 亚洲精品久久久久久久久久久| 免费观看30秒视频久久| 亚洲高清在线| 中文欧美在线视频| 国产精品色午夜在线观看| 亚洲免费在线电影| 久久综合久久88| 亚洲精品国产系列| 欧美色网一区二区| 午夜天堂精品久久久久| 老司机精品久久| 亚洲人体影院| 国产精品美女主播| 久久人人看视频| 亚洲精品一区二区三| 午夜视频一区在线观看| 影音先锋中文字幕一区二区| 欧美国产三区| 亚洲一区二区在线播放| 猫咪成人在线观看| 99热这里只有成人精品国产| 国产精品亚洲综合一区在线观看 | 欧美激情日韩| 亚洲综合99| 影音先锋一区| 欧美午夜久久久| 久久精品国产第一区二区三区| 欧美国产大片| 午夜欧美大尺度福利影院在线看 | 欧美日韩第一区日日骚| 亚洲欧美伊人| 亚洲精品1234| 久久久久久网| 亚洲欧美激情诱惑| 亚洲国产你懂的| 国产伦精品一区二区三| 欧美激情成人在线视频| 欧美中文在线免费| 99国产精品久久久久老师| 麻豆精品在线播放| 欧美一区二区三区在线观看 | 欧美日韩在线影院| 欧美中文在线字幕| 一本色道久久88综合日韩精品| 蜜臀av在线播放一区二区三区| 亚洲男人的天堂在线| 日韩视频免费观看高清完整版| 国产欧美一区二区三区在线看蜜臀| 欧美成人三级在线| 久久久久久久网| 欧美伊人久久久久久午夜久久久久| 亚洲精品久久久久久久久久久| 久热精品在线| 久久成人精品视频| 亚洲一区免费| 中日韩在线视频| 亚洲全黄一级网站| 在线观看亚洲精品视频| 国产免费亚洲高清| 国产精品久久久久久久app| 欧美激情一区二区三区蜜桃视频 | 欧美激情导航| 欧美jizzhd精品欧美巨大免费| 亚洲欧美日韩国产| 亚洲欧美日本伦理| 亚洲欧美国产精品va在线观看| 一区二区久久久久久| 99re66热这里只有精品3直播| 亚洲精品久久久久久久久久久久| 欧美激情1区| 欧美激情亚洲| 亚洲国产精品一区二区尤物区| 农村妇女精品| 亚洲第一中文字幕| 亚洲国产精品成人va在线观看| 亚洲国产乱码最新视频| 亚洲欧洲中文日韩久久av乱码| 亚洲第一区中文99精品| 欧美激情精品久久久久久变态| 欧美大片一区| 亚洲日韩成人| 一区二区日韩| 亚洲欧美激情四射在线日 | 欧美激情亚洲综合一区| 欧美日韩国产小视频| 欧美午夜国产| 国产日韩欧美在线看| 亚洲福利视频三区| 在线亚洲一区| 欧美一区二区福利在线| 另类图片综合电影| 亚洲精品久久久蜜桃| 亚洲午夜在线观看| 久久婷婷av| 欧美色图首页| 红桃视频国产精品| 日韩亚洲在线观看| 午夜久久99| 亚洲电影在线播放| 亚洲婷婷综合久久一本伊一区| 久久精品女人| 欧美日韩小视频| 一区在线免费观看| 亚洲欧美成人在线| 嫩草成人www欧美| 一级日韩一区在线观看| 久久久久久久久久看片| 欧美日韩国产首页在线观看| 国内精品久久久久久久影视蜜臀 | 99伊人成综合| 欧美在线精品一区| 欧美日韩一区二区在线观看视频| 国产一区二区三区免费在线观看| 亚洲日韩成人| 久久久久国产精品麻豆ai换脸| 日韩一级大片| 久久综合九色综合欧美狠狠| 国产精品久久久久毛片大屁完整版 | 国产女优一区| 日韩视频在线一区二区| 久久久久国产精品麻豆ai换脸| 日韩视频中文| 免费视频一区二区三区在线观看| 国产偷久久久精品专区| 国产精品99久久久久久久久久久久 |