【[TJOI2017]城市】】的更多相关文章

[BZOJ4890][TJOI2017]城市(动态规划) 题面 BZOJ 洛谷 题解 数据范围都这样了,显然可以暴力枚举断开哪条边. 然后求出两侧直径,暴力在直径上面找到一个点,使得其距离直径两端点的最大距离最小. 然后我用线段树求的直径,就跑得很快了. #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #include<cmath> #include&…
洛谷题目链接:[TJOI2017]城市 题目描述 从加里敦大学城市规划专业毕业的小明来到了一个地区城市规划局工作.这个地区一共有ri座城市,<-1条高速公路,保证了任意两运城市之间都可以通过高速公路相互可达,但是通过一条高速公路需要收取一定的交通费用.小明对这个地区深入研究后,觉得这个地区的交通费用太贵.小明想彻底改造这个地区,但是由于上司给他的资源有限,因而小明现在只能对一条高速公路进行改造,改造的方式就是去掉一条高速公路,并且重新修建一条一样的高速公路(即交通费用一样),使得这个地区的两个城…
P3761 [TJOI2017]城市 题目描述 从加里敦大学城市规划专业毕业的小明来到了一个地区城市规划局工作.这个地区一共有ri座城市,<-1条高速公路,保证了任意两运城市之间都可以通过高速公路相互可达,但是通过一条高速公路需要收取一定的交通费用.小明对这个地区深入研究后,觉得这个地区的交通费用太贵.小明想彻底改造这个地区,但是由于上司给他的资源有限,因而小明现在只能对一条高速公路进行改造,改造的方式就是去掉一条高速公路,并且重新修建一条一样的高速公路(即交通费用一样),使得这个地区的两个城市…
4890: [Tjoi2017]城市 Time Limit: 30 Sec  Memory Limit: 128 MBSubmit: 149  Solved: 91[Submit][Status][Discuss] Description  从加里敦大学城市规划专业毕业的小明来到了一个地区城市规划局工作.这个地区一共有ri座城市,<-1条高速公路,保证了任意两运城市之间都可以通过高速公路相互可达,但是通过一条高速公路需要收取一定的交通费用.小明对这个地区深入研究后,觉得这个地区的交通费用太贵.小…
[TJOI2017]城市 题目描述 从加里敦大学城市规划专业毕业的小明来到了一个地区城市规划局工作.这个地区一共有ri座城市,<-1条高速公路,保证了任意两运城市之间都可以通过高速公路相互可达,但是通过一条高速公路需要收取一定的交通费用.小明对这个地区深入研究后,觉得这个地区的交通费用太贵.小明想彻底改造这个地区,但是由于上司给他的资源有限,因而小明现在只能对一条高速公路进行改造,改造的方式就是去掉一条高速公路,并且重新修建一条一样的高速公路(即交通费用一样),使得这个地区的两个城市之间的最大交…
题目描述 从加里敦大学城市规划专业毕业的小明来到了一个地区城市规划局工作.这个地区一共有ri座城市,<-1条高速公路,保证了任意两运城市之间都可以通过高速公路相互可达,但是通过一条高速公路需要收取一定的交通费用.小明对这个地区深入研究后,觉得这个地区的交通费用太贵.小明想彻底改造这个地区,但是由于上司给他的资源有限,因而小明现在只能对一条高速公路进行改造,改造的方式就是去掉一条高速公路,并且重新修建一条一样的高速公路(即交通费用一样),使得这个地区的两个城市之间的最大交通费用最小(即使得交通费用…
https://www.lydsy.com/JudgeOnline/problem.php?id=4890 https://www.luogu.org/problemnew/show/P3761 从加里敦大学城市规划专业毕业的小明来到了一个地区城市规划局工作.这个地区一共有n座城市,n-1条高速公路,保证了任意两运城市之间都可以通过高速公路相互可达,但是通过一条高速公路需要收取一定的交通费用. 小明对这个地区深入研究后,觉得这个地区的交通费用太贵.小明想彻底改造这个地区,但是由于上司给他的资源有…
Online Judge:Luogu P3761 Label:树的直径,暴力 题目描述 从加里敦大学城市规划专业毕业的小明来到了一个地区城市规划局工作.这个地区一共有n座城市,n-1条高速公路,保证了任意两运城市之间都可以通过高速公路相互可达,但是通过一条高速公路需要收取一定的交通费用.小明对这个地区深入研究后,觉得这个地区的交通费用太贵. 小明想彻底改造这个地区,但是由于上司给他的资源有限,因而小明现在只能对一条高速公路进行改造,改造的方式就是去掉一条高速公路,并且重新修建一条一样的高速公路(…
LINK:城市 谢邀,学弟说的一道毒瘤题. 没有真正的省选题目毒瘤 或者说 写O(n)的做法确实毒瘤. 这里给一个花20min就写完的非常好写的暴力. 容易想到枚举哪条边删掉 删掉之后考虑在哪两个点上加. 一个比较重要的性质是 联通两个连通块之后 大联通块的直径端点一定有一端属于原来两个联通块的直径端点之一. 也就是合并两个连通块 直径等于=max(左边直径,右边直径,链接起来的直径) 其中前两者固定 考虑让第三者最小 进一步可以分析得到 那两个点的贡献是到自己连通块内的最长距离的点. 分别最小…
嘟嘟嘟 这题刚开始想复杂了,想什么dp去了,其实没那么难. 考虑断掉一条边,记分离出来的两棵子树为A和B,那么合并后的树的直径可能有三种情况: 1.A的直径. 2.B的直径 3.A的半径+边权+B的半径. 半径是啥?记从点\(i\)出发到树上任意一点的最长距离为\(f[i]\),则树的半径就是\(min \{ f[i] \}\)(此题需要min,严格定义我也不知道是max还是min). 所以我们\(O(n)\)枚举断边,\(O(n)\)求树的直径和半径即可. 直径不必说,说一下怎么求半径. 对于…
显然删掉的边肯定是直径上的边.考虑枚举删哪一条.然后考虑怎么连.显然新边应该满足其两端点在各自树中作为根能使树深度最小.只要线性求出这个东西就可以了,这与求树的重心的过程类似. #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib> #include<cstring> #include<algorithm> using namespace std; #…
传送门 $ \color{green} {solution : }$ 我们可以暴力枚举断边,然后 $ O(n) $ 的跑一次换根 $ dp $,然后复杂度是 $ O(n * n) $ 的 #include <bits/stdc++.h> using namespace std; const int maxn = 100010; template <typename T> inline void G(T &x) { x = 0; char o; bool f = false;…
题目 好像\(noip\)之前做某雅礼的题的时候看到过这道题的数据范围增强版 当时那道题数据范围是\(3e5\)感觉神仙的一批 这道题数据范围\(5e3\)那岂不是可以\(O(n^2)\)水过 有一点非常显然就是我们断开的那条边肯定是树的直径上的一条边,于是我们可以先来两遍树形\(dp\)求出子树内最长链,次长链,和子树外最长链 这个时候树的直径就知道啦 我们枚举断边,当然只断直径上的边 之后得到了两个联通块,我们对这两个联通块求一下直径 考虑连接哪两个点会使得新直径尽量小 显然分别从这两个联通…
BZOJ 4890. 在树上断开一条边之后会形成两个联通块,如果要使这一条边接回去之后保持一棵树的形态,那么必须在两个联通块之间各找一个点连接. 那么,对于每一条可能断开的边,它产生的答案是以下两者的最大值: 1.其中一个联通块的直径 2.两个联通块中从一个点出发最短的最长距离之和再加上这一条边的权值. 这么拗口,就叫做半径好了. 断开的边是肯定要枚举的,这题的主要矛盾变成了如何求这个半径. 思考一个点的半径会产生于哪里,有以下两种来源: 1.它子树中的点到它距离的最大值. 2.除了它的子树中的…
题目链接 BZOJ4890 题解 枚举断开哪一条边,然后对剩余的两棵树分别做一遍换根法树形dp 需要求出每个点到树中其它点距离的最大值\(f[i]\)和次大值\(g[i]\)[用以辅助换根计算最大值] 求出每棵树中的最长路径,然后再将两棵树中\(f[i]\)最小值相连保证相连后产生的最大值最小 \(O(n^2)\)的复杂度 如果怕被卡常,可以知道要切的边一定在直径上,虽然上界没有变,但速度可以快不少 #include<algorithm> #include<iostream> #i…
题目链接 Solution 这道题,调了我一晚上... 一直80分 >_<|| ... 考虑到几点: 分开任意一条边 \(u\) ,那么其肯定会断成两棵树. 肯定是分开直径上的边最优,否则原树上最长的边仍然会存在. 其新树直径只有可能更大. 令两棵子树的直径分别为 \(dist_1,dist_2\) ,选取的两个点分别为 \(x_1,x_2.\) 其达到两棵子树的最远距离分别为 \(dis_1,dis_2\). 那么组成的新树直径即为: \[max(dist_1,dist_2,dis_1+di…
重点是求树的直径.半径. 参考这里 #include <iostream> #include <cstring> #include <cstdio> using namespace std; int n, uu[5005], vv[5005], ww[5005], cnt, hea[5005], zui[5005], cii[5005], dis; //zui means the longest chain, cii means the second longest c…
标签:树形dp,枚举,树的直径 一上来看到这个题就慌了,只想到了 $O(n^3)$ 的做法. 碰到这种题时要一步一步冷静地去分析,观察数据范围. 首先,$n\leqslant 5000$,所以可以先 $O(n)$ 枚举切断哪条边. 而如果暴力枚举连哪条边的话时间就是爆炸的,不妨冷静地分类讨论一下. 当断掉这条边后,就形成了两个小树. 那么,新树的直径无外乎只有 2 种情况:两个小树中直径的较大值(只经过一棵树的点)/经过两棵树的点. 对于第一种情况,当我们断掉这条边时就是确定好的,可以直接 O(…
树形dp专题总结 大力dp的练习与晋升 原题均可以在网址上找到 技巧总结 1.换根大法 2.状态定义应只考虑考虑影响的关系 3.数据结构与dp的合理结合(T11) 4.抽直径解决求最长链的许多类问题(T12) 5.dp题最基本的考察是对题意模型的转化,以应用在各个方面 6.前缀和等技巧优化dp 7.树形背包是n*n的! T1 BZOJ1304 [CQOI2009]叶子的染色 首先是对于固定根节点的\(dp\) \(dp\)状态\(dp[3]\)为子树还需要颜色\(1,2\),或不需要 转移比较简…
由于个人研究需要,需要采集天气历史数据,前一篇文章:C#+HtmlAgilityPack+XPath带你采集数据(以采集天气数据为例子),介绍了基本的采集思路和核心代码,经过1个星期的采集,历史数据库基本全了,现在开放该数据库,目的是为了让可能需要该类型做相关研究准备的,至于实时天气的采集本项目也做了,暂时不公布,如果有需求的,单独好我联系,原因很简单,人家小站也不容易,大家一起拖,容易搞死,主要大家都不能用. .NET开源项目:[目录]本博客其他.NET开源项目文章目录 本文原文地址:分享20…
<?phpheader("content-type:text/html;charset=utf-8");date_default_timezone_set("Asia/Shanghai");error_reporting(0);// 根据IP判断城市$user_ip = $_SERVER['REMOTE_ADDR'];$url ="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js…
#coding=utf-8from time import sleepimport unittestfrom selenium import webdriverfrom selenium.webdriver import Remotefrom selenium.webdriver.common.by import By#元素定位import sysdef browser():#启动浏览器驱动    #driver = webdriver.Ie()    driver = Remote(comma…
根据当前所处位置 定位所在城市信息 <html> <head> <meta charset="UTF-8" /> <title>js 百度 geolocation 定位当前城市</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="vi…
<!doctype html><html>    <head>            <meta http-equiv="Content-Type" content="text/html;charset=utf-8">        <meta name="viewport" content="width=device-width, initial-scale=1.0, maximu…
2001: [Hnoi2010]City 城市建设 Time Limit: 20 Sec  Memory Limit: 162 MBSubmit: 1132  Solved: 555[Submit][Status][Discuss] Description PS国是一个拥有诸多城市的大国,国王Louis为城市的交通建设可谓绞尽脑汁.Louis可以在某些城市之间修建道路,在不同的城市之间修建道路需要不同的花费.Louis希望建造最少的道路使得国内所有的城市连通.但是由于某些因素,城市之间修建道路需…
场景: 根据IP地址判断用户所在地,虽然网上有好多篇了,但我记录一个一看就懂的,不用看超长文字再自己理解了. 我们有城市和IP地址段的对应关系,如: 上海: 202.127.0.0 ~ 202.127.4.255 北京: 122.200.64.0 ~ 122.207.255.255 此时如果用户的IP地址为122.202.2.0,我们就能根据这个表知道他的地址位于北京. 方法: 使用有序集合记录这个表,每个城市存储两条数据,一条是城市名对应的分数为最大IP地址.另一条是“#”加上城市名对应的分数…
DJSelectCityViewController.m #import "DJSelectCityViewController.h" #import "DJConstantValue.h" #import "DJCityGroup.h" #import "MJExtension.h" @interface DJSelectCityViewController ()<UITableViewDataSource,UITab…
周末的时候趁着一次机会,拿WG(博客)开发的城市选择插件改了一个移动端可以直接用的城市选择插件. 原版插件是基于原声JavaScript写的,在此先感谢作者. 我做的只是依照肯德基注册会员的页面的交互效果改了一下界面,同时将各个触发效果改成了跟肯德基注册页面类似的交互效果,源程序不依赖jQuery但是我自己做简单的交互的时候偷懒使用了jQuery所以,如果您要使用这个插件完全可以换掉我写的那一些事件注册. 详细的因为我并没有大改,所以也就不po细节了,具体的项目代码我贴在这里. https://…
100 拉萨市101 那曲地区102 日喀则地区103 阿里地区104 昆明市105 楚雄彝族自治州106 玉溪市107 红河哈尼族彝族自治州108 普洱市109 西双版纳傣族自治州110 临沧市111 大理白族自治州112 保山市113 怒江傈僳族自治州114 丽江市115 迪庆藏族自治州116 德宏傣族景颇族自治州117 张掖市118 武威市119 东莞市120 东沙群岛121 三亚市122 鄂州市123 乌海市124 莱芜市125 海口市126 蚌埠市1277 河南省直辖县级行政单位127…
用Echarts中,使用地图的series部分中展示城市如果用json返回数据的话,js不能直接用字符串使用.需要处理一下. php中的部分 json返回的数据 js中获取json信息 用ajax实现调用 因为Echarts图表map中的展示城市需要的格式是[{name:'北京'},{name:'天津'}] 先是数组然后是对象形式的,但是js中不支持字符串格式的数据,所以我们就用js中的array()和Object()处理一下.最后push()一下. 然后我们console.log一下 如果出现…