自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Last Order

最后之作

  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

转载 树的重心

还记得曾经提到过的树的“重心”吗?重心的定义是:以这个点为根,那么所有的子树(不算整个树自身)的大小都不超过整个树大小的一半。树的重心的一个的性质:树中所有点到某个点的距离和中,到重心的距离和是最小的;如果有两个重心,那么他们的距离和一样。这也是“道路修建”带来的启发。(证明:调整法)树的重心的另一个性质:把两个树通过一条边相连得到一个新的树,那么新的树的重心在

2015-09-28 21:54:55 559

原创 hihocoder 1228 Mission Impossible 6

题意:定义一些文本编辑器的常规操作L:光标左移R:光标右移S:按下insertD:按下deleteB:按下backspace,跟三次元不同的是shift操作对它无影响C:第一次按下相当于shift,第二次按下相当于ctrl+c。跟三次元不同的是ctrl+c时,若光标没有选择字符,则相当于对剪切板进行清空。在三次元里则是对剪切板无影响。V:相当于ctrl+v其它字符:

2015-09-23 22:24:59 1167

原创 hdu5456 Matches Puzzle Game

题意:给出n个火柴棒,问能摆成多少个a-b=c的等式,其中,a,b,c均为正整数。做法:dp[i][j][cr][b][c],当前用了i个火柴棒,从低位到高位,已经考虑到了第j位,cr代表j-1位是否给j位贡献了一个1,b代表数字b是否已经到了最高位,c代表数字c是否已经到了最高位。不断枚举在j位的数字进行数位dp即可。由于j肯定是不断在增大的,所以写的时候可以直接舍去这维。#includ

2015-09-23 12:06:09 961 1

原创 hihocoder 1233 Boxes

题意:给出n个不同的数,每次可以把一个较小的那个数移到相邻的较大的那个数的上面,问最少需要移动多少次使得这n个数是升序的。做法:从升序状态bfs出到其它状态的最小步数即可,状态s:从左到右,第i个数在第j个位置,例如序列312表示成231,因为1在第2个位置,2在第3个位置,3在第1个位置。#include#include#include#include#include

2015-09-22 12:19:09 1111

原创 圆的扫描线

有关圆的扫描线的学习就告一段落了,这里总结下。圆的扫描线是有条件的:任意圆之间,只有包含跟相离这两种条件。怎么扫描呢?假如是从左往右扫,set从上到下保存圆,假设碰到一个圆,那么碰到的一定是这个圆的左端点,我们把它丢到set里,当再也扫不到它的时候,很显然就是碰到它的右端点的时候,这个时候把它从set中丢掉。然后具体讨论要做什么操作的时候,就可以自己构造了,就用下面这三个例题来说明

2015-09-18 21:44:30 2086

转载 计算机科学中最重要的32个算法

奥地利符号计算研究所(Research Institute for Symbolic Computation,简称RISC)的Christoph Koutschan博士在自己的页面上发布了一篇文章,提到他做了一个调查,参与者大多数是计算机科学家,他请这些科学家投票选出最重要的算法,以下是这次调查的结果,按照英文名称字母顺序排序。A* 搜索算法——图形搜索算法,从给定起点到给定终点计算出

2015-09-17 13:14:40 444

转载 置换群

置换群看了几天置换群,一直没搞清楚定义是怎么回事,一个置换可以写成若干循环的乘积,那么如果置换求幂的话,一个循环不会跑到另一个循环里面去。我们可以简单理解为这几个位置的数来回换。poj3270给出一列数,求将这列数排成升序的最小花费,这里花费定义为交换两个数的和。例如给出一排数8 4 5 3 2 7,那么我们最终的状态为2 3 4 5 7 8,这里的轮换有(8 2 7)

2015-09-16 18:01:54 1139

原创 codeforces 576B Invariance of Tree

题意:给出一个长度为n的序列p,若p[u]跟p[v]连边,那么u跟v就要连边,问是否可以建造一颗结点数为n的树。做法:考虑下置换群,不懂的话没关系,拿第一个样例来说4 3 2 1可以拆成(4,1)跟(3,2),为啥这么拆?因为4转化到1,1转化到4,所以丢到一起,大概称之为一个群?算了就叫做集合吧。3跟2同理。总之就是,一个集合里的数跟它能够转化得到的数都在同一个集合里。

2015-09-16 11:43:33 746

原创 codeforces 576C Points on Plane

题意:给出n个点,要求排序后,相邻两点的欧拉距离之和小于等于2.5e9做法:由于0≤ xi, yi ≤ 1e6,所以可以将x然后每一份中的点都按照y单调排序。拿任意一份点做实验,如果从最小的y开始往上走,那么y的贡献最多1e6,那么一千份就总共最多贡献1e9。最后考虑x的贡献,在某一份点中,从一个点走到另一个点最多贡献1e3,那么这份总共最多贡献1e9,也就是所有点都在这一份里面,那么

2015-09-15 19:51:37 1305

原创 UVA 12931 Common Area

题意:给出两个多边形,判断是否有公共面积。做法:很显然若不重合,必然有一个多边形有边穿过或就在另一个多边形里面。问题就很简单了。#include#include#include#include#include#include#include#include#include#include#include#include#include

2015-09-09 18:03:06 645 1

转载 概率dp

HDU 4035/*HDU 4035kuangbinhttp://www.cnblogs.com/kuangbin/ dp求期望的题。 题意: 有n个房间,由n-1条隧道连通起来,实际上就形成了一棵树, 从结点1出发,开始走,在每个结点i都有3种可能: 1.被杀死,回到结点1处(概率为ki) 2.找到出口,走出迷宫 (概

2015-09-07 18:53:42 397

原创 hdu4089 Activation

题意思路什么的戳下面:http://blog.csdn.net/ACM_cxlove/article/details/7922978http://www.cnblogs.com/kuangbin/archive/2012/10/03/2710987.htmldp公式很好列出来,最麻烦的是因为dp公式恰好又是个死循环,于是列出i个方程可解出所有解,我是首先求出dp[i][i],然

2015-09-06 18:53:13 430

Dev-Cpp 5.5.3 TDM-GCC x64 4.7.1 Setup.exe

官网下的,方便自己网吧使用。调试编译功能完整。

2014-04-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除