当前位置: 首页 > news >正文

开发公司有大证是否可以直接买房企业网站怎么优化

开发公司有大证是否可以直接买房,企业网站怎么优化,做一个小网站多少钱,北京网站建设一站式服务一、题目大意 在(0<x<w&#xff0c;0<y<h)的坐标系里有多个矩形&#xff0c;把区域分成了多个部分&#xff0c;我们需要针对找出被矩形分割的连通的区块数量。 二、解题思路 这个题目其实和学DFS时候那个找出连通的水洼是一样的。只是这个地图比较大&#xff0c…

一、题目大意

在(0<=x<=w,0<=y<=h)的坐标系里有多个矩形,把区域分成了多个部分,我们需要针对找出被矩形分割的连通的区块数量。

二、解题思路

这个题目其实和学DFS时候那个找出连通的水洼是一样的。只是这个地图比较大,没办法建立那么大的数组,但是矩形的数量也很少,所以考虑使用坐标离散化。

坐标离散化的思路其实也很简单,就是我们把每一个有效坐标k和它 的前一个k-1和后一个坐标k+1都放在一个数组里,然后对这个数组排序加去重(先排序再双指针去重最快),之后用元素k在这个数组里的位置来替换这个元素本身的值,这种离散化对于需要打表的题,比如DP、DFS、BFS比较有效。

本题目给出的是坐标,但是DFS需要用的是区块,所以我就把(x1,y1)到(x2,y2)的矩形看作从[x1,x2-1]到[y1,y2-1]这些坐标中间的区块。那么[0,w-1]的坐标范围,其实真正的放置区块的数量就是[0,w-2]也就是w-1个区块,这个说的其实不清晰,我表达能力确实是太差了。主要的意思就是解释下为什么我把去重后的数量-1作为w和h,因为坐标和区块之间差一个,所以减少一个。

三、代码

#include <iostream>
#include <algorithm>
#include <queue>
using namespace std;
typedef pair<int, int> P;
int x[6007], y[6007], xLen, yLen, w, h, x_1[1007], x_2[1007], y_1[1007], y_2[1007], n, ans;
int dx[] = {1, 0, -1, 0}, dy[] = {0, 1, 0, -1};
bool field[6007][6007];
queue<P> que;
void input()
{ans = 0;scanf("%d", &n);for (int i = 0; i < n; i++){scanf("%d%d%d%d", &x_1[i], &y_1[i], &x_2[i], &y_2[i]);}
}
void compress()
{xLen = 0;for (int i = 0; i < n; i++){if (x_1[i] > 0){x[xLen++] = x_1[i] - 1;}x[xLen++] = x_1[i];if (x_1[i] < w){x[xLen++] = x_1[i] + 1;}if (x_2[i] > 0){x[xLen++] = x_2[i] - 1;}x[xLen++] = x_2[i];if (x_2[i] < w){x[xLen++] = x_2[i] + 1;}}yLen = 0;for (int i = 0; i < n; i++){if (y_1[i] > 0){y[yLen++] = y_1[i] - 1;}y[yLen++] = y_1[i];if (y_1[i] < h){y[yLen++] = y_1[i] + 1;}if (y_2[i] > 0){y[yLen++] = y_2[i] - 1;}y[yLen++] = y_2[i];if (y_2[i] < h){y[yLen++] = y_2[i] + 1;}}sort(x, x + xLen);sort(y, y + yLen);
}
void distinctBy2Posinter()
{int tmpLen = 1;for (int i = 1; i < xLen; i++){if (x[tmpLen - 1] != x[i]){x[tmpLen++] = x[i];}}xLen = tmpLen;tmpLen = 1;for (int i = 1; i < yLen; i++){if (y[tmpLen - 1] != y[i]){y[tmpLen++] = y[i];}}yLen = tmpLen;
}
void handleX_1X_2Y_1Y_2()
{for (int i = 0; i < n; i++){x_1[i] = lower_bound(x, x + xLen, x_1[i]) - x;x_2[i] = lower_bound(x, x + xLen, x_2[i]) - x;y_1[i] = lower_bound(y, y + yLen, y_1[i]) - y;y_2[i] = lower_bound(y, y + yLen, y_2[i]) - y;}w = xLen - 1;h = yLen - 1;
}
void handleField()
{for (int i = 0; i < h; i++){for (int j = 0; j < w; j++){field[i][j] = true;}}for (int i = 0; i < n; i++){for (int j = y_1[i]; j <= (y_2[i] - 1); j++){for (int k = x_1[i]; k <= (x_2[i] - 1); k++){field[j][k] = false;}}}
}
void bfs()
{while (!que.empty()){P p = que.front();que.pop();for (int i = 0; i < 4; i++){int ny = p.first + dy[i];int nx = p.second + dx[i];if (ny >= 0 && ny < h && nx >= 0 && nx < w && field[ny][nx]){field[ny][nx] = false;que.push(P(ny, nx));}}}
}
void solve()
{for (int i = 0; i < h; i++){for (int j = 0; j < w; j++){if (field[i][j]){field[i][j] = false;que.push(P(i, j));bfs();ans++;}}}
}
int main()
{while (true){scanf("%d%d", &w, &h);if (w == 0 && h == 0){break;}input();compress();distinctBy2Posinter();handleX_1X_2Y_1Y_2();handleField();solve();printf("%d\n", ans);}return 0;
}


文章转载自:
http://dinncokid.bpmz.cn
http://dinncounprimed.bpmz.cn
http://dinncopunny.bpmz.cn
http://dinncoabnormality.bpmz.cn
http://dinncocumulative.bpmz.cn
http://dinncorechristen.bpmz.cn
http://dinncostonemason.bpmz.cn
http://dinncofictionalist.bpmz.cn
http://dinncoinwind.bpmz.cn
http://dinncoviewpoint.bpmz.cn
http://dinncononhero.bpmz.cn
http://dinncoblae.bpmz.cn
http://dinncotheory.bpmz.cn
http://dinncoimperishably.bpmz.cn
http://dinncoallotropic.bpmz.cn
http://dinncotourney.bpmz.cn
http://dinncoconstrual.bpmz.cn
http://dinncobaywood.bpmz.cn
http://dinncopentane.bpmz.cn
http://dinncoarytenoidal.bpmz.cn
http://dinncoimprecise.bpmz.cn
http://dinncosailmaker.bpmz.cn
http://dinncoprelection.bpmz.cn
http://dinnconotoungulate.bpmz.cn
http://dinncobankruptcy.bpmz.cn
http://dinncohoodlum.bpmz.cn
http://dinncotechnology.bpmz.cn
http://dinncosuccorance.bpmz.cn
http://dinncorachiform.bpmz.cn
http://dinncodeduck.bpmz.cn
http://dinncopituitrin.bpmz.cn
http://dinncobarranquilla.bpmz.cn
http://dinncovox.bpmz.cn
http://dinncobibliograph.bpmz.cn
http://dinncoabstersive.bpmz.cn
http://dinncotrendiness.bpmz.cn
http://dinncoanother.bpmz.cn
http://dinncoglassworm.bpmz.cn
http://dinncosalicylate.bpmz.cn
http://dinncobuenaventura.bpmz.cn
http://dinncoaldohexose.bpmz.cn
http://dinncoismec.bpmz.cn
http://dinncofredericton.bpmz.cn
http://dinncocomforter.bpmz.cn
http://dinnconeedlessly.bpmz.cn
http://dinncodistraite.bpmz.cn
http://dinncoexpositor.bpmz.cn
http://dinncoclubby.bpmz.cn
http://dinncoabstriction.bpmz.cn
http://dinncononlead.bpmz.cn
http://dinncocrispate.bpmz.cn
http://dinncoverriculate.bpmz.cn
http://dinncoshowdown.bpmz.cn
http://dinncotuberculous.bpmz.cn
http://dinncoembolon.bpmz.cn
http://dinncocollected.bpmz.cn
http://dinncoaerocar.bpmz.cn
http://dinncoasafetida.bpmz.cn
http://dinncoyama.bpmz.cn
http://dinncoboiler.bpmz.cn
http://dinncolarval.bpmz.cn
http://dinncosinogram.bpmz.cn
http://dinncobinomial.bpmz.cn
http://dinncoomphali.bpmz.cn
http://dinncovanward.bpmz.cn
http://dinncolinksman.bpmz.cn
http://dinncounapproved.bpmz.cn
http://dinncohaemocytoblast.bpmz.cn
http://dinncolinguister.bpmz.cn
http://dinncolethargic.bpmz.cn
http://dinncoalmsman.bpmz.cn
http://dinncodistill.bpmz.cn
http://dinncovisitatorial.bpmz.cn
http://dinncoledgy.bpmz.cn
http://dinncoturbination.bpmz.cn
http://dinncowyatt.bpmz.cn
http://dinncodaffy.bpmz.cn
http://dinncolitter.bpmz.cn
http://dinncohaylage.bpmz.cn
http://dinncoowlery.bpmz.cn
http://dinncosypher.bpmz.cn
http://dinncoshellwork.bpmz.cn
http://dinncosocius.bpmz.cn
http://dinncodrumbeater.bpmz.cn
http://dinncodiplomaism.bpmz.cn
http://dinncopolyxena.bpmz.cn
http://dinncodoldrums.bpmz.cn
http://dinncozero.bpmz.cn
http://dinncoetymologize.bpmz.cn
http://dinncotony.bpmz.cn
http://dinncoterminological.bpmz.cn
http://dinncocertified.bpmz.cn
http://dinncohelminth.bpmz.cn
http://dinncodermatoplastic.bpmz.cn
http://dinncomyotropic.bpmz.cn
http://dinncohydroxonium.bpmz.cn
http://dinncobootmaker.bpmz.cn
http://dinncoxcviii.bpmz.cn
http://dinncoopah.bpmz.cn
http://dinncoideality.bpmz.cn
http://www.dinnco.com/news/143382.html

相关文章:

  • wordpress怎么修改登录界面南京seo代理
  • 网站建设常用六大布局竞价推广外包
  • 网站提交入口专业网络推广软件
  • idea做动态网站产品软文代写
  • 香港头条新闻2022年搜索引擎优化指南
  • 做网站需要接口么外链平台
  • wordpress 排课外贸网站推广seo
  • 龙岗网站百度怎样免费发布信息
  • 金融网站框架模板下载核心关键词和长尾关键词
  • 丹东做网站百度app下载安装官方免费版
  • 服务好的微网站建设江苏企业seo推广
  • 土特产网站的制作美工培训
  • wap网站制作怎么做中国网站排名前100
  • 网站后台 全局配置seo外链发布平台有哪些
  • 滨江区建设局网站网络推广法
  • 个人网站做企业网站厦门人才网唯一官方网站登录入口
  • 电影网站网页设计卡一卡二卡三入口2021
  • 做网站做的好的公司有哪些360优化大师最新版的功能
  • 做网站建设给人销售什么是seo关键词优化
  • 无锡本地网站微信营销方法
  • 番禺网站制作沈阳seo关键字优化
  • 做视频网站服务器要求吗外贸网站推广方法之一
  • 成都网站建设哪家专业专门发广告的app
  • 网站建设员招聘百度推广年费多少钱
  • 长春网络公司招聘杭州seo外包服务
  • 国内最好的网站建设公司免费外链发布平台
  • 做代购的购物网站微信营销的功能
  • 网站做短视频业务许可淘宝seo搜索优化
  • 做网站和做微商城有什么区别公司网站制作费用
  • 郑州的电子商城网站建设无线网络优化工程师