博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVALive 6663 Count the Regions 离散+bfs染色_(:зゝ∠)_
阅读量:7108 次
发布时间:2019-06-28

本文共 1730 字,大约阅读时间需要 5 分钟。

题目链接:

gg。。==

#include 
#include
#include
#include
#include
#include
#include
#include
using namespace std;#define ll long long#define inf 10000000#define N 55typedef pair
pii;struct node{ int lx, ly, rx, ry; void put(){printf(" (%d,%d) - (%d,%d) ",lx,ly,rx,ry);}}a[N];vector
X,Y;ll mp[200][200];int vis[200][200];int step[4][2] = {-1,0, 0,-1, 0,1, 1,0};int n;void bfs(int x, int y){ queue
qx, qy; qx.push(x); qy.push(y); vis[x][y]=1; while(!qx.empty()) { int ux = qx.front(); qx.pop(); int uy = qy.front(); qy.pop(); for(int i = 0; i < 4; i++) { int vx = step[i][0] + ux, vy = step[i][1] + uy; if(vx<0 || vx>=200 || vy<0 || vy>=200)continue; if(vis[vx][vy])continue; if(mp[ux][uy]!=mp[vx][vy])continue; vis[vx][vy] = 1; qx.push(vx); qy.push(vy); } }}void input(){ X.clear(); Y.clear(); for(int i = 1; i <= n; i++) { scanf("%d %d %d %d",&a[i].lx,&a[i].ly,&a[i].rx,&a[i].ry); X.push_back(a[i].lx); Y.push_back(a[i].ly); X.push_back(a[i].rx); Y.push_back(a[i].ry); } sort(X.begin(), X.end()); X.erase(unique(X.begin(), X.end()), X.end()); sort(Y.begin(), Y.end()); Y.erase(unique(Y.begin(), Y.end()), Y.end()); for(int i = 1; i <= n; i++){ a[i].lx = lower_bound(X.begin(), X.end(), a[i].lx) - X.begin()+10; a[i].rx = lower_bound(X.begin(), X.end(), a[i].rx) - X.begin()+10; a[i].ly = lower_bound(Y.begin(), Y.end(), a[i].ly) - Y.begin()+10; a[i].ry = lower_bound(Y.begin(), Y.end(), a[i].ry) - Y.begin()+10; }/**/}int main(){ int i, j; while(scanf("%d",&n), n){ input(); memset(mp, 0, sizeof mp); memset(vis, 0, sizeof vis); for(i = 1; i <= n; i++) for(j = a[i].lx; j < a[i].rx; j++) for(int k = a[i].ry; k< a[i].ly; k++) mp[j][k] = mp[j][k] | (1ll<

转载地址:http://ralhl.baihongyu.com/

你可能感兴趣的文章
深度学习 vs. 概率图模型 vs. 逻辑学
查看>>
Eclipse中使用javap运行配置详解
查看>>
DHCP租约时间工作原理
查看>>
Qt移动应用开发(六):QML与C++互动
查看>>
svn代码统计工具的金额
查看>>
2015第32周三
查看>>
Codeforces 56D Changing a String 编辑距离 记忆dp
查看>>
Scala 深入浅出实战经典 第62讲:Scala中上下文界定内幕中的隐式参数实战详解...
查看>>
Android应用Design Support Library完全使用实例
查看>>
中通打印助手-实现快递面单快速打印(免费使用)
查看>>
付款页面DEMO
查看>>
Swift - 使用Core Data进行数据持久化存储
查看>>
[转载]服务器和应用系统迁移方案
查看>>
类的专有方法(__init__)
查看>>
open()系统调用的实现
查看>>
java历史集合类对比
查看>>
Java实现字符全阵列阵列
查看>>
媒体类型和字符集
查看>>
iOS keyChain
查看>>
GIT在LINUX下的基本操作
查看>>