时间:2015-05-19 来源:

UVALive3662AnotherMinimumSpanningTree曼哈顿最小生成树【编程语言】

题目链接:点击打开链接

模版题

#include <stdio.h> #include <iostream> #include <algorithm> #include <sstream> #include <stdlib.h> #include <string.h> #include <limits.h> #include <vector> #include <string> #include <time.h> #include <math.h> #include <iomanip> #include <queue> #include <stack> #include <set> #include <map> const int inf = 1e9; const double eps = 1e-8; const double pi = acos(-1.0); template <class T> inline bool rd(T &ret) { char c; int sgn; if (c = getchar(), c >= '0'&&c <= '9') ret = ret * 10 + (c - '0'); ret *= sgn; return 1; } template <class T> inline void pt(T x) { if (x <0) { putchar('-'); x = -x; } if (x>9) pt(x / 10); putchar(x % 10 + '0'); } using namespace std; const int N = 1e5 + 10; typedef long long ll; class MST{ struct Edge{ int from, dis; Edge(int _from = 0, int _dis = 0) :from(_from), dis(_dis){} bool operator < (const Edge &x) const{return dis < x.dis;} }edge[N << 3]; int f[N], int y){ x = find(x); y = find(y); if (x == y)return false; if (x > y)swap(x, int v, v, dis); } ll work(){//计算最小生成树,承接网页制作返回花费 sort(edge, edge[i].to)) cost += edge[i].dis; return cost; } }mst; struct Point{//二维平面的点 int x, id; bool operator < (const Point&a) const{ return x == a.x ? y < a.y : x < a.x; } }p[N]; class BIT{//树状数组 int c[N], maxn; int lowbit(int x){ return x&-x; } public: void init(int n){ maxn = n + 10; fill(c, inf); fill(id, -1); } void updata(int x, int _id){ while (x){ if (val < c[x]){ c[x] = val; id[x] = _id; } x -= lowbit(x); } } int query(int x){ int val = inf, int *y){ return *x < *y; } class Manhattan_MST{ int A[N], int r){ mst.init(r); for (int dir = 1; dir <= 4; dir++){ if (dir%2==0)for (int i = l; i <= r; i++)swap(p[i].x, p + r + 1); for (int i = l; i <= r; i++) A[i] = B[i] = p[i].y - p[i].x; //离散化 sort(B + 1, B + N + 1) - B - 1; //初始化反树状数组 tree.init(sz); for (int i = r; i >= l; i--) { int pos = lower_bound(B + 1, A[i]) - B; int id = tree.query(pos); if (id != -1) mst.add(p[i].id, abs(p[i].x - p[id].x) + abs(p[i].y - p[id].y)); tree.updata(pos, i); } } return mst.work(); } }m_mst; int n; int main(){ int Cas = 1; while (cin >> n, rd(p[i].y), Cas++); cout << m_mst.work(1, n) << endl; } return 0; }

题意:

给定二维平面的n个点坐标,web外包问曼哈顿MST 的值.

点击次数:3679
作者:
web前端行业资讯
Web new NewsList
谷歌安全博客披露“英特尔内核漏洞”更多细节 ,,2018年01月04日Postgres10开发者新特性 ,,2017年12月28日阿里巴巴、狗尾草、苏大联合论文:基于对抗学习的众包标注用于中文命名实体识别 ,,2017年12月28日柯洁的2017:20岁,与AI斗与人类斗,其乐无穷 ,,2017年12月28日如果机器人拥有痛觉,这个世界会有哪些不一样? ,,2017年12月28日苹果经典电脑Lisa源代码修复完成将于2018年开源 ,,2017年12月28日腾讯浏览指数发布年终榜单2017年人们都关注哪些AI话题? ,,2017年12月28日除了发现开普勒90,NASA还靠AI做了什么? ,,2017年12月28日柯洁宣布:明年4月,将再次与围棋AI交锋 ,,2017年12月28日百度无人车美国首秀CES将发布Apollo2.0 ,,2017年12月28日这四种技术发展趋势将在2018年改变世界 ,,2017年12月28日2017:谷歌DeepMind团队的年度回顾 ,,2017年12月28日封杀这个公式,AI智商将为零 ,,2017年12月28日微软AI高管:要让所有人、所有机构都用上人工智能 ,,2017年12月28日为什么Linux桌面年一直未到来 ,,2017年12月28日AppleLisa操作系统将开源 ,,2017年12月28日2018年9大技术趋势预测 ,,2017年12月28日谷歌研究院发布NIMA:能评价图像有多美,还能让图像变得更美 ,,2017年12月28日苹果为2019年iPhone开发大容量电池新技术 ,,2017年12月28日谷歌发布Tacotron2:能更简单地训练AI学习演讲 ,,2017年12月21日TensorFlow漏洞爆发背后:关于AI安全我们的傻与天真 ,,2017年12月21日Android端Edge浏览器新版发布:常规性能优化和BUG修复 ,,2017年12月21日三星开发出全球最小的DRAM芯片技术领先优势扩大 ,,2017年12月21日腾讯绝艺AI下一步将学习AlphaGozero自对弈训练 ,,2017年12月21日Facebook社交VR应用Spaces扩大覆盖面:入驻HTCVive ,,2017年12月21日设计图曝光:三星双屏折叠手机原来是这样的 ,,2017年12月21日微信支付和支付宝已成为世界移动支付的"老师" ,,2017年12月21日新专利表明FaceID未来有望装备在iPad、MacBook和iMac等设备 ,,2017年12月21日首批九个建议加入EE4J的项目 ,,2017年12月21日这就是SurfacePhone?微软可折叠手机概念图曝光 ,,2017年12月21日NDK开发之调用方法 【编程语言】2015年09月05日照片处理软件Fotoxx11.10发布 ,,2016年06月29日Android顶部工具栏和底部工具栏的简单实现代码2014年01月30日ASP.NET中生成Excel遇到的问题及改进方法2014年01月29日安卓环境下载地址【移动开发】2015年08月30日Linux系列-文件系统【移动开发】2015年04月27日UVA11005Semi-primeH-numbers(筛法) 【综合】2015年05月11日MapReduce的两表join操作优化 【互联网】2015年03月30日oracle多表查询 【系统运维】2015年07月02日iOS上架打包注意 【编程语言】2015年04月03日CodeforcesRound#297(Div.2)C.IlyaandSticks【编程语言】2015年06月01日sublimetext3中文乱码问题解决办法 【移动开发】2015年06月12日如何使用AppStudio快速定制你自己的UniversalWindowsApp【综合】2014年11月24日Master内使用FindControl找不到控件的解决方案 【移动开发】2015年03月12日HttpURLConnection连接详解 【编程语言】2015年06月29日安卓系统手机音乐播放器问题 【架构设计】2015年02月25日JS和Jquery获取和修改label的值的示例代码2014年01月29日PHP在不同页面间传递Json数据示例代码2014年01月29日B.NewYearPermutation(CF)【编程语言】2015年02月13日开源javaCMS-FreeCMS2.3移动app生成首页数据 【编程语言】2015年06月05日Python:自定义异常类 【综合】2015年06月17日ExtJS简介让你知道extjs是什么2014年01月29日关于后盾网yii框架的学习小结(5)--验证码的使用与规则的设置,为后台模块设置独立的布局 【移动开发】2015年04月24日java架构解密——双容器优化aop 【系统运维】2015年06月30日Linux驱动开发索引 【Web前端】2015年06月18日SquareLinearLayout(高等于宽的自适应LinearLayout)【编程语言】2014年12月10日Android原生生成JSON与解析JSON 【编程语言】2015年07月13日矩阵相乘【Web前端】2015年07月03日网络探测工具(二)——traceroute 【编程语言】2015年04月13日判断中间目录是否存在 【编程语言】2015年07月27日
我们保证
We guarantee
> psd效果文件手工切图,保证图片效果最好体积最小利于传输
> 100%手写的HTML(DIV+CSS)编码,绝对符合W3C标准
> 代码精简、css沉余量小、搜索引擎扫描迅速,网页打开快捷
> 应用Css Sprite能够减少HTTP请求数,提高网页性能
> 跨浏览器兼容(IE6、7、8、9,Firefox火狐,Chrome谷歌)