【HDU5861】Road】的更多相关文章

题意 有n个村庄排成一排,有n-1条路将他们连在一起.每条路开放一天都会花费一定数量的钱.你可以选择打开或者关上任意条路在任意一天,但是每条路只能打开和关闭一次.我们知道m天的运输计划.每天都有一辆马车从村庄ai到存在bi.你需要保证从ai到bi的路在第i天全部打开.如果要使花费最少,每天的花费应该是多少?n,m<=200000. 分析 这个题应该有各种各样的做法吧. 注意到,每条路只能打开和关上一次,我们可以很容易想到一个朴素的算法. 记录下每条路最后一次用到的是哪一天.然后每一天如果需要的路…
最短路+拓扑序DP orz zyf & lyd 统计每条边在多少条最短路径上……其实可以统计 有多少条最短路径经过了x,以及y出发到达任意一个结束点有多少种走法(沿最短路) 我们可以用Dijkstra求出以 i 为起点的最短路径图,它是一个DAG,然后我们用dij扩展的顺序(一个拓扑序)来搞DP! 令a[x]表示从 i 沿最短路走到 x 的方案数,b[x]表示从 x 往出走,沿最短路走到任意一个结束结点的总方案(就是经过x的最短路条数?只不过只看后半段) 其实就是将最短路分开两半进行统计了……然…
题意:给你一棵n 个节点的树,定义1到n的代价是1到 n节点间的最短路径的长度. 现在给你 m 组询问,让你添加一条边权为 w 的边(不与原图重复),求代价的最大值.询问之间相互独立. 1≤n,m≤3×1e5,1<=c[i]<=1e9,1<=w<=1e9 思路:网上dalao们的写法好像都和我不太一样…… 考虑将1-n路径上所有的点取出,则原树变成了一条链和若干条子树 首先判断以链上某一点为根的子树size是否>=3,若是则可以在其内部连边,对最短路没有影响 若没有则考虑在链…
题意:给一个无向图,问最少添加多少条边后能使整个图变成双连通分量. 思路:双连通分量缩点,缩点后给度为1的分量两两之间连边,要连(ans+1) div 2条 low[u]即为u所在的分量编号,flag=0,1,2表示没搜过,没搜完,搜完了 POJ上pascal编译器出问题了不管怎么交都CE 这次写的 应该能处理重边 ..]of longint; n,m,i,e,v,ans,x,y,tot,time:longint; procedure add(a,b:longint); begin inc(to…
题意:给定一张n点n边无重边自环的无向图,刚开始每条边都没有被选择,每条边上有一个颜色集合,必须从中选择一种 有K个工人,每个工人有颜色a[i],需要把工人分配到与其颜色相同的边上 问是否能有一种使得n个点完全联通的方案,如果有则输出 n,K<=2000 思路:考虑n-1条边的树的弱化版,显然每条边都应该被选择,用颜色和边建图跑最大流即可 n点n边的基环树的情况下需要把环抠出来,设环的大小为size,两个端点至少有一个在环中的为A集合,其余为B集合 显然B集合中所有的边都需要被选取,A集合中至多…
题目: 题目大意:输入n,k.两个人轮流选一个数x(1<=x<=max(1,n-k))减去n,若到一个人的回合n=0那么那个人失败.Kilani先手. 通过手动模拟几个实例,很容易发现先手基本都是胜利的. 如 n取10,k取2: 先手的取值范围是[1,8],这时x取8一定能获胜,因为当x=8时n=2,后手只能取1,一轮后,先手获胜. n取10,k取3: 先手的取值范围是[1,7],这时x取6一定能获胜,因为当x=6时n=4,后手同样只能取1,此时n又是偶数,几轮下来先手获胜. 根据实例可以归纳…
time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard output Vasya is currently at a car rental service, and he wants to reach cinema. The film he has bought a ticket for starts in t minutes. There is a str…
[算法]图论,最短路? [题意]原图为无向连通图,现给定原图的最短路矩阵,求原图最小边权和,n<=300. [题解]要求最小边权和下,原图的所有边一定是所连两端点的最短路. 那么现在将所有最短路作为边加入原图,考虑删边. 对于(u,v),若存在点w使得(u,v)=(u,w)+(w,v),则(u,v)可以删去.(btw,若是>则无解) 复杂度O(n^3). #include<cstdio> #include<cstring> #include<cctype>…
[题目链接] 点击打开链接 [算法] tarjan算法求边双联通分量 [代码] #include <algorithm> #include <bitset> #include <cctype> #include <cerrno> #include <clocale> #include <cmath> #include <complex> #include <cstdio> #include <cstdli…
[HDU] 1213 - How Many Tables [基础并查集,求父节点个数] 1856 -More is better [基础并查集,注意内存,HDU数据水了,不用离散化,注意路径压缩的方式就好]代码链接:http://blog.csdn.net/catherinetang0919/article/details/24815507 1232--畅通工程---[基础并查集,没什么好说的,最基础的题,代码就免了,小小纪念一下,十分钟内写好代码然后1A] 1102-Constructing…
转自:http://blog.csdn.net/shahdza/article/details/7779230 [HDU]1213 How Many Tables 基础并查集★1272 小希的迷宫 基础并查集★1325&&poj1308 Is It A Tree? 基础并查集★1856 More is better 基础并查集★1102 Constructing Roads 基础最小生成树★1232 畅通工程 基础并查集★2120 Ice_cream's world I 基础并查集★212…
转自:http://blog.csdn.net/shahdza/article/details/7779356 [HDU][强连通]:1269 迷宫城堡 判断是否是一个强连通★2767Proving Equivalences 至少加几条边让整个图变成强连通★3836 Equivalent Sets 至少加几条边让整个图变成强连通★1827 Summer Holiday 传递的最小费用★★3072 Intelligence System 传递的最小费用★★3861The King’s Proble…
转自:http://blog.csdn.net/shahdza/article/details/7779273 最短路 [HDU] 1548 A strange lift基础最短路(或bfs)★2544 最短路 基础最短路★3790 最短路径问题基础最短路★2066 一个人的旅行基础最短路(多源多汇,可以建立超级源点和终点)★2112 HDU Today基础最短路★1874 畅通工程续基础最短路★1217 Arbitrage 货币交换 Floyd (或者 Bellman-Ford 判环)★124…
转自——http://blog.csdn.net/qwe20060514/article/details/8112550 =============================以下是最小生成树+并查集======================================[HDU]1213   How Many Tables   基础并查集★1272   小希的迷宫   基础并查集★1325&&poj1308  Is It A Tree?   基础并查集★1856   More i…
iOS开发中遇到的一些问题及解决方案[转载] 2015-12-29 [385][scrollView不接受点击事件,是因为事件传递失败] // //  MyScrollView.m //  Created by beyond on 15/6/6. //  Copyright (c) 2015年 beyond.com All rights reserved. //  不一定要用继承,可以使用分类 #import "MyScrollView.h" #import "CoView.…
前言:针对单源最短路算法,目前最经典的思路即标号算法,以Dijkstra算法和Bellman-Ford算法为根本演进了各种优化技术和算法.针对复杂网络,传统的优化思路是在数据结构和双向搜索上做文章,或者针对不必要的循环进行排除.近年来,最短路算法大量应用于需要高及时性的领域,比如GIS领域,也大量应用于网络规模巨大的社会网络分析领域,这使得传统思路并不能很好地解决,于是把最短路算法思路本身抽象成两阶段算法,第一阶段为数据预处理,第二阶段为实时地搜索.这二者是互相矛盾的,如何找到平衡是各种算法技术…
题目一: [题目描述] Palmia国有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的N个城市.北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同. 每对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故.编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航线不相交的情况下,被批准的申请尽量多. [输入] 第1行,一个整数N(1≤N≤5000),表示城市数. 第2行到第n+1行,每行两…
[NOI2008]志愿者招募 和[2017山东day7]养猫做法类似. 都是神仙题. 首先我设\(c_{i,j}=[l[j]\leq i\leq r[j]]\) ,于是就可以列出下面的不等式: \[ \displaystyle \begin{align} \sum_{i=1}^mc_{1,i}*d_i&\geq a_1\\ &...\\ \sum_{i=1}^mc_{n,i}*d_i&\geq a_n\\ 0&=0 \end{align} \] 我们加一个辅助变量\(y_i…
[HNOI2013]切糕 Sample Input 2 2 2 1 6 1 6 1 2 6 2 6 Sample Output 6 \(P,Q,R≤40,0≤D≤R\) 参考:https://blog.csdn.net/zarxdy34/article/details/45272055 经典的有距离限制的网络流模型. 首先我们不考虑高度限制.我们直接将图建\(r+1\)层,就是每个格子\((x,y)\)拆成\(r+1\)个点.将它们串成一串,第\(i\)层的向\(i+1\)层连边,第\(i\)条…
[BZOJ3451]Normal Description 某天WJMZBMR学习了一个神奇的算法:树的点分治! 这个算法的核心是这样的: 消耗时间=0 Solve(树 a) 消耗时间 += a 的 大小 如果 a 中 只有 1 个点 退出 否则在a中选一个点x,在a中删除点x 那么a变成了几个小一点的树,对每个小树递归调用Solve 我们注意到的这个算法的时间复杂度跟选择的点x是密切相关的. 如果x是树的重心,那么时间复杂度就是O(nlogn) 但是由于WJMZBMR比较傻逼,他决定随机在a中选…
[BZOJ4298][ONTAK2015]Bajtocja Description 给定d张无向图,每张图都有n个点.一开始,在任何一张图中都没有任何边.接下来有m次操作,每次操作会给出a,b,k,意为在第k张图中的点a和点b之间添加一条无向边.你需要在每次操作之后输出有序数对(a,b)的个数,使得1<=a,b<=n,且a点和b点在d张图中都连通. Input 第一行包含三个正整数d,n,m(1<=d<=200,1<=n<=5000,1<=m<=100000…
[ZJOI2012]灾难 阿米巴是小强的好朋友. 阿米巴和小强在草原上捉蚂蚱.小强突然想,如果蚂蚱被他们捉灭绝了,那么吃蚂蚱的小鸟就会饿死,而捕食小鸟的猛禽也会跟着灭绝,从而引发一系列的生态灾难. 学过生物的阿米巴告诉小强,草原是一个极其稳定的生态系统.如果蚂蚱灭绝了,小鸟照样可以吃别的虫子,所以一个物种的灭绝并不一定会引发重大的灾难. 我们现在从专业一点的角度来看这个问题.我们用一种叫做食物网的有向图来描述生物之间的关系: 一个食物网有 N个点,代表 N 种生物,如果生物 x 可以吃生物 y,…
[HNOI2018]毒瘤 设\(f_{v,0}\)表示\(v\)的子树中\(v\)不选的方案数,\(f_{v,1}\)表示\(v\)选的方案数. 显然 \[ f_{v,0}=\prod (f_{sn,0}+f_{sn,1})\\ f_{v,1}=\prod f_{sn,0} \] 我们可以写成矩阵乘法的形式 \[ \begin{bmatrix}f_{sn,0}& f_{sn,1}\end{bmatrix} \begin{bmatrix} f_{v,0}&f_{v,1}\\f_{v,0}&a…
[JSOI2018]潜入行动 树形\(DP\).设\(f_{i,j,0/1,0/1}\)表示以\(i\)为根的子树中,用了\(j\)个监听器,是否放置了监听器,是否被监听的方案数.转移就多讨论几种情况就好了. 关键问题是直接这么做是\(O(NK^2)\)的. 解决方案就是,我们别\(DP\)边维护子树的大小\(size\),每次枚举子树的监听器的时候不能超过\(min\{size,k\}\).这看似只是一个常数优化,但其实可以吧复杂度降到\(O(NK)\). 可以看这位dalao的证明 \(DP…
[HNOI2016]树 题目描述 每一个复制过来的子树(我们称为一个树团)有用的只有需要被访问的节点,包括根,根的父亲,要询问的点.我们只需要求出这些点到其所在树团根的距离以及倍增数组就好了. 需要讨论一些不同的情况. 然而我头铁,写了虚树,时间/空间常数大到自闭(不敢乱写虚树了). 要注意的细节是,我维护了两个数组:\(dep_v\)表示\(v\)到根的节点数:\(dis_v\)表示\(v\)到根的路径数.这两个数组不能混用. 代码: #include<bits/stdc++.h> #def…
[BZOJ2117] [2010国家集训队]Crash的旅游计划 Description 眼看着假期就要到了,Crash由于长期切题而感到无聊了,因此他决定利用这个假期和好友陶陶一起出去旅游. Crash和陶陶所要去的城市里有$N (N > 1) $个景点,Crash用正整数\(1\)到\(N\)给景点标号.这些景点之间通过\(N − 1\)条无向道路相连,每条道路有一个长度,并且保证任意两个景点之间都有且仅有一条路径相连.现在对于一个景点\(s\),Crash和陶陶从\(s\)出发,然后访问一…
[SDOI2017]天才黑客 这题太神了. 先模Claris 大神的题解. 首先我们要将边转换为点.如果暴力连边就会有\(m^2\)的边,于是我们考虑优化建图. 难点在于快速得到两个边的串的\(lcp\),也就是\(trie\)树上的\(lca\).我们将一堆点按\(dfs\)序排序,然后\(a\)到\(b\)的\(lca\)就是排序后\(min\{lca(a,a+1),lca(a+1,a+2)...lca(b-1,b)\}\),这里的\(min\)是深度最小. 对于原图上的点\(i\),我们就…
[转]MySQL-Select语句高级应用 1.1 SELECT高级应用 1.1.1 前期准备工作 本次测试使用的是world数据库,由mysql官方提供下载地址: https://dev.mysql.com/doc/index-other.html world文件导入方法,官方说明: https://dev.mysql.com/doc/world-setup/en/world-setup-installation.html 下载sqlyog 软件,用于之后的数据库管理用: http://www…
No1: 定义函数 function abs(x) { if (x >= 0) { return x; } else { return -x; } } var abs = function (x) { if (x >= 0) { return x; } else { return -x; } }; 由于JavaScript允许传入任意个参数而不影响调用,因此传入的参数比定义的参数多也没有问题,虽然函数内部并不需要这些参数: abs(10, 'blablabla'); // 返回10 abs(-…
[独家]硅谷创业公司在中国常跌的五个坑|禾赛科技CEO李一帆柏林亚太周主题演讲 李一帆 Xtecher特稿作者 关注  Xtecher推荐   演讲者:李一帆   翻译:晓娜   网址:www.xtecher.com   微信公众号ID:Xtecher  Yifan Li, Ph.D., CEO of Hesai Technologies  2016/5/26 Keynote at Berlin Asia-Pacific Week 李一帆博士,禾赛科技CEO 2016/5/26 柏林亚太周上的…