解析·NOIP·冷门 CLZ最小环】的更多相关文章

赐予我力量,去改变我所能改变的;赐予我勇气,去接受我不能改变的;并赐予我智慧,去分辨这两者. -----安东尼达斯 NOIP的图论题中有一部分是跟图上的环有关的.蒟蒻的我在USACO上刷题时发现了一种(或许)还没有普及的快速最小环算法,拥有极高的效率,可以在求最短路的时间复杂度内求出经过任意一点的最小环大小或权值.作者将它称作Calculate lacework zoomly shortest cyclic,这里暂译作CLZ最小环. 与Floyd求图上最小环不同,CLZ最小环还可以很快捷地求出经…
蒟蒻的风之旅人即将退役,现在分享一下退休前的故事 首先,经过这么多时间的划水训练,我成功从一个萌新变成了一个蒟蒻.我学会了各种奇怪玄学的算法,比如说昨天老师讲的NOIP第三题通用的算法,叫做XG算法,也就是通过各种不同的操作使得程序总体分数变高的很实用的算法,通俗地讲,就是瞎搞算法. 好了不说废话,开始我的表演 1. 不可能用朴素算法的,这辈子都不可能写朴素暴力的. 首先最重要的是背各种算法的优化模板.例如线段树可以写成ZKW线段树,也就是非递归线段树来优化,最短路可以套上CLZ最小环来优化,等…
题目描述 C 城将要举办一系列的赛车比赛.在比赛前,需要在城内修建 mm 条赛道. C 城一共有 nn 个路口,这些路口编号为 1,2,-,n1,2,-,n,有 n-1n−1 条适合于修建赛道的双向通行的道路,每条道路连接着两个路口.其中,第 ii 条道路连接的两个路口编号为 a_i*a**i* 和 b_ibi,该道路的长度为 l_ili.借助这 n-1n−1 条道路,从任何一个路口出发都能到达其他所有的路口. 一条赛道是一组互不相同的道路 e_1,e_2,-,e_ke1,e2,-,ek,满足可…
一.单项选择题(共 10 题,每题 2 分,共计 20 分: 每题有且仅有一个正确选项) \2. 下列属于解释执行的程序设计语言是( ). A. C B. C++ C. Pascal D. Python 答案:D 解析:编译语言 :C/C++.Pascal/Object Pascal(Delphi) ​ 解释性语言 :JavaScript.VBScript.Perl.Python.Ruby.MATLAB 区别就是编译语言要先翻译成中间代码,每执行一次都要翻译一次 \4. 设根节点深度为 0,一棵…
[题外话] 感谢UBUNTU为保存程序做出贡献:https://paste.ubuntu.com : 感谢洛谷OJ的私人题库保存题面:https://www.luogu.org : 现在我的题解的所有程序均保存在UBUNTU上,需要时单击超链接查看 : 由于题目的不确定性,现在所有测试数据的建立全部来自于参加本次巨石杯的选手 OYCY & LSH 下面的程序为本人程序,暂且未知评测状态,会有误差,会及时更正!!! 5月14日 绿城育华NOIP巨石杯试卷解析 T1 最大的最小 [地址]https:…
NOIP试题解析           by QTY_YTQ noip2010关押罪犯(并查集) 题意是有n个罪犯关在两个监狱中,其中有m对罪犯有仇恨关系,如果有仇恨的罪犯关在一起会产生一定影响力的事件,要求安排罪犯位置使产生影响力最大的事件影响最小. 可以用并查集来做,每个罪犯抽象为两个点,一个表示该罪犯关押在1监狱,另一个表示该罪犯关押在2监狱,我们将罪犯仇恨关系按影响的大小排序,每次选取影响力最大的一对罪犯(x,y),尽可能不让它们在一个监狱内,将x1和y2合并,将x2和y1合并,继续往后做…
一.单项选择题(共 10  题,每题 2  分,共计 20  分: 每题有且仅有一个正确选项)       1. 下列四个不同进制的数中,与其它三项数值上不相等的是( ). A. (269) 16 B. (617) 10 C. (1151) 8 D. (1001101011) 2   答案:D   解析:进制转换,把所有的选项都转换成相同的进制即可.至于转成几进制,看个人喜好   2. 下列属于解释执行的程序设计语言是( ). A. C B. C++ C. Pascal D. Python  …
Problem 1 高级打字机(type.cpp/c/pas) [题目描述] 早苗入手了最新的高级打字机.最新款自然有着与以往不同的功能,那就是它具备撤销功能,厉害吧. 请为这种高级打字机设计一个程序,支持如下3种操作: 1.T x:在文章末尾打下一个小写字母x.(type操作) 2.U x:撤销最后的x次修改操作.(Undo操作) (注意Query操作并不算修改操作) 3.Q x:询问当前文章中第x个字母并输出.(Query操作) 文章一开始可以视为空串. [输入格式] 第1行:一个整数n,表…
11.01 子段和 题目大意 给定一个长度为 \(n\) 的序列 \(a\) ,\(a_i=\{ -1,0,1 \}\) ,需要将 \(a\) 中的 \(0\) 变为 \(1\) 或 \(-1\) ,使得序列 \(a\) 的最大子段绝对值和最小. \(1\le n \le 10^6\) 解析 考虑到何为最大子段绝对值和,其为 最大前缀和 \(-\) 最小前缀和 那么我们即需要将最小前缀和最大化的情况下让最大前缀和最小 或 让最大前缀和最小化的情况下让最小前缀和最大. 这里考虑第一种写法. 先让全…
原题: 小Z最擅长解决序列问题啦,什么最长公共上升然后下降然后上升的子序列,小Z都是轻松解决的呢. 但是小Z不擅长出序列问题啊,所以它给了你一道签到题. 给定一个n个数的序列ai,你要求出满足下述条件的点对的数量. 假设点对是(i , j),max(l,r)是[l,r]当中最大的ai的值. 这个点对满足条件当且仅当i+1<j 且 ai < max(i+1,j-1) < aj 为了简单,保证输入的是一个1-n的排列.相信你已经会做了吧? 输入/输出格式 输入数据第一行有一个数字n,然后第二…