亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

POJ - 3714 分治

2019-11-11 06:35:08
字體:
來源:轉載
供稿:網友

題意:

給出兩個集合,每個集合中有n個點,求屬于不同集合的兩個點之間的最短距離。

思路:

分治,套用最接近點對問題的方法,只要在保存res的時候判斷是否是屬于同一個集合即可。

代碼:

#include <cstdio>#include <cstring>#include <algorithm>#include <cmath>using namespace std;typedef long long ll;const int MAXN = 2e5 + 10;const ll INF = 0x3f3f3f3f3f3f3f3f;struct Point {    double x, y;    int flag;}p[MAXN], q[MAXN];bool cmpx(const Point &a, const Point &b) {    return a.x < b.x;}bool cmpy(const Point &a, const Point &b) {    return a.y < b.y;}double dist(Point a, Point b) {    return sqrt((a.x - b.x) * (a.x - b.x) + (a.y - b.y) * (a.y - b.y));}double solve(int l, int r) {    if (l == r) return INF;    if (l + 1 == r) {        if (p[l].flag != p[r].flag) return dist(p[l], p[r]);        return INF;    }    int m = (l + r) >> 1;    double res = min(solve(l, m), solve(m + 1, r));    int cnt = 0;    for (int i = l; i <= r; i++)        if (fabs(p[i].x - p[m].y) <= res) q[++cnt] = p[i];    sort (q + 1, q + cnt + 1, cmpy);    for (int i = 1; i <= cnt; i++) {        for (int j = i + 1; j <= cnt; j++) {            if (q[j].y - q[i].y >= res) break;            if (q[i].flag != q[j].flag)                res = min(res, dist(q[i], q[j]));        }    }    return res;}int main() {    int T;    scanf("%d", &T);    while (T--) {        int n;        scanf("%d", &n);        for (int i = 1; i <= n; i++) {            scanf("%lf%lf", &p[i].x, &p[i].y);            p[i].flag = 0;        }        for (int i = n + 1; i <= 2 * n; i++) {            scanf("%lf%lf", &p[i].x, &p[i].y);            p[i].flag = 1;        }        sort (p + 1, p + 1 + 2 * n, cmpx);        PRintf("%.3f/n", solve(1, 2 * n));    }    return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日本aⅴ大伊香蕉精品视频| 国产精品专区一| 久久人人爽人人爽人人片av高清| 久久手机免费视频| 久久777国产线看观看精品| 久久精品国产精品| 亚洲影院色无极综合| 高清欧美一区二区三区| 在线播放国产一区中文字幕剧情欧美| 日韩欧美一区二区三区| 欧洲亚洲免费在线| 亚洲网站在线看| 欧美午夜精品久久久久久浪潮| 日韩av一区二区在线观看| 久久香蕉国产线看观看网| 中文字幕v亚洲ⅴv天堂| 国产美女搞久久| 久久久久久91| 久久国产精品久久久久久| 亚洲天堂第一页| 国产精品久久久精品| 亚洲一区美女视频在线观看免费| 欧美视频一区二区三区…| 欧美黄色免费网站| 国产999精品视频| 久久韩国免费视频| 亚洲国产91精品在线观看| 日本精品va在线观看| 尤物九九久久国产精品的分类| 国产精品福利网| 亚洲美女中文字幕| 91久久精品一区| 国产精品成人免费视频| 在线观看免费高清视频97| 日韩av免费看| 一级做a爰片久久毛片美女图片| 欧美亚洲激情视频| 亚洲第一在线视频| 久久久久久国产| 欧美另类老女人| 国产精品久久色| 日韩中文字幕在线精品| 国产日韩精品一区二区| 亚洲深夜福利网站| 亚洲性生活视频在线观看| 综合激情国产一区| 中文字幕亚洲国产| 亚洲欧美日韩久久久久久| 亚洲欧美综合区自拍另类| zzjj国产精品一区二区| 久久91超碰青草是什么| 亚洲视频免费一区| 国产亚洲美女精品久久久| 亚洲最大成人在线| 亚洲欧美精品一区| 久久精品这里热有精品| 日韩亚洲欧美中文在线| 中文字幕在线成人| 91亚洲精品在线| 欧美国产日韩二区| 欧美色videos| 日韩在线免费视频| 色综合老司机第九色激情| 狠狠躁夜夜躁人人躁婷婷91| 久久夜精品va视频免费观看| 成人免费福利视频| 国产视频一区在线| 91高清视频免费观看| 欧美专区福利在线| 精品国产拍在线观看| 日韩动漫免费观看电视剧高清| 成人精品aaaa网站| 国产91精品青草社区| 日韩在线高清视频| 欧美成人免费小视频| 亚洲第一网站男人都懂| 91精品在线观| 国产午夜精品麻豆| 性色av一区二区三区免费| 亚洲毛片在线观看| 久久久伊人欧美| 中文字幕不卡在线视频极品| 欧美日韩国产中文精品字幕自在自线| 久久久久久久久久久91| 亚洲xxx大片| 欧美性xxxx极品hd欧美风情| 久久精品在线播放| 欧美成人午夜影院| 久久久久久伊人| 精品日韩中文字幕| 亚洲欧美中文日韩在线| 欧美性猛交xxxx乱大交| 91久久精品国产91性色| 久久久久女教师免费一区| 亚洲天堂免费在线| 亚洲精品日韩久久久| 亚洲国产精品成人一区二区| 97色在线视频观看| 成人久久一区二区| 欧美成人免费全部观看天天性色| 中文字幕av一区中文字幕天堂| 久久久中文字幕| 欧美一级电影免费在线观看| 久久久久久成人| 麻豆成人在线看| 欧美中文字幕视频| 亚洲丝袜av一区| 日韩欧美亚洲一二三区| 国产在线视频不卡| 九九久久久久久久久激情| 亚洲第一中文字幕| 久久久久久亚洲精品中文字幕| 精品亚洲va在线va天堂资源站| 91精品国产综合久久香蕉最新版| 欧美猛交免费看| 91社区国产高清| 青青在线视频一区二区三区| 7m第一福利500精品视频| 欧美午夜视频在线观看| 成人日韩在线电影| y97精品国产97久久久久久| 国产午夜精品理论片a级探花| 亚洲精品久久久久| 久久精品国产2020观看福利| 亚洲精品98久久久久久中文字幕| 日韩中文第一页| 中文字幕一区日韩电影| 日韩美女视频免费在线观看| 日韩亚洲第一页| 欧美激情欧美狂野欧美精品| 亚洲欧洲在线播放| 日本最新高清不卡中文字幕| 91精品在线国产| 久久久久久久久久久91| 一二美女精品欧洲| 欧美性极品xxxx做受| 国内精品模特av私拍在线观看| 精品久久久香蕉免费精品视频| 成人福利网站在线观看11| 国产精品扒开腿爽爽爽视频| 欧美极品欧美精品欧美视频| 国产一区二区在线免费| 国产精品扒开腿爽爽爽视频| 在线看国产精品| 日韩中文第一页| 亚洲深夜福利网站| 欧美成人免费va影院高清| 97成人超碰免| 96精品久久久久中文字幕| 在线一区二区日韩| 欧美日韩一区二区精品| 成人网页在线免费观看| 国产69精品久久久久久| 精品女同一区二区三区在线播放| 日韩中文在线观看| 国产亚洲在线播放| 91视频九色网站| 91精品国产色综合久久不卡98口| 理论片在线不卡免费观看| 久久国产精品首页| 国内精品400部情侣激情| 国产精品大片wwwwww| 国产日韩精品在线播放| 一区二区三区回区在观看免费视频|