自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

AC_kereo的专栏

No one could stop you, as surely want it .

  • 博客(212)
  • 收藏
  • 关注

原创 bzoj 1269 文本编辑器editor splay

题意:中问题。思路:splay的基本操作,注意读入,详见代码:/********************************************************* file name: bzoj1269.cpp author : kereo create time: 2015年02月01日 星期日 16时57分30秒*********************

2015-02-01 20:51:50 832

原创 LA 6525 Attacking rooks 二分匹配

题意:给定n*n的棋盘,可以在'.'上摆 象棋中的车(X是墙壁)使得任意两个车都不能互相攻击到求最多能摆多少个车。思路:将每行中连续为.的作为X集合中一个点,同样,将每列中连续为.的点作为Y集合中的一个点。对原图中每个'.',将其对应的X集合和Y集合中的标号建边,便形成了二分图,对该图求最大匹配。详见代码:/*****************************

2015-01-31 23:24:03 722

原创 hdu 3487 Play with Chain splay

题意:对于一个序列有两种操作: 1. Cut  a b c 把序列第a个到第b个切下来,站在剩余元素中第c个后面。 2. Flip a b 把第a个到第b个区间的元素翻转。思路:splay。都是基本的操作,基本都是利用rotateto进行操作。注意下切的时候再补上去的时候要更新下其父亲的地址,详见代码:/*************************************

2015-01-31 20:28:45 557

原创 hdu 3564 Another LIS splay

题意:依次插入i到pos[i],查询插入后当前LIS。思路:splay。因为插入的数是升序的,那么对于i,只要知道pos[i]之前的最大LIS---x,那么以i结尾的最大LIS=x+1。那么只要在splay中,只要维护一个当前区间最大的LIS,插入的时候,把第pos-1位的点旋到根root,把pos位的点旋到根的右结点R(root),新插入的点插在L(R(root))即可,结点的值

2015-01-31 14:09:52 680

原创 hdu 5072 Coprime 2014 Asia AnShan Regional Contest 单色三角形模型+容斥 好题!

题意:给了n个不同的数,要求有多少个三元组,两两互质 或者 两两不互质。思路:        单色三角形模型:给定空间的n个点,其中没有三点共线。每两个点之间都用红色或者黑色线段连接,求3条边同色的三角形个数。       我们从反面考虑,只要求出了非单色三角形,就能间接得到单色三角形的个数。在每个非单色三角形中,恰好有两个顶点连接两个不同颜色的边,而且对于一个点有两个不同颜色的边

2015-01-31 14:05:30 1105

原创 hdu4821 String 字符串hash(bkdrhash)

题意:给定m,l,一个字符串str。我们定义一个子串为"recoverable”串 当1、长度为 M*L2、把这个好串分成M段,每段长度为L,且每段各不相同。求“recoverable”串的个数,串相同位置不同也算不同。思路:预处理数组hash,hash[i]表示从i位置到尾的字符串hash值。这里数组为unsigned long long型,因为可以自动取模。然后枚举

2015-01-30 18:35:47 857

原创 poj 3468 A Simple Problem with Integers splay

题意:有两种操作: 1. C l r x: 区间[l,r]的数加x。   2. Q  l r : 查询区间[l,r]的和。思路:线段树的裸题,只是为了练习splay。详见代码:/********************************************************* file name: poj3468.cpp author : kereo cre

2015-01-28 23:15:14 622

原创 hdu4360 As long as Binbin loves Sangsang spfa变形

题意:给定n个点m条边的无向图,每次必须沿着LOVE走,到终点时必须是完整的LOVE,且至少走出一个LOVE,问这样情况下最短路是多少,在一样短情况下最多的LOVE个数是多少。注意:有自环!(见底下的数据)思路:其实本质就是个最短路,用spfa就好。注意自环的特殊处理,详见代码:/*****************************************************

2015-01-26 23:15:51 673

原创 hdu4359 Easy Tree DP? dp

题意:给定n deep1、构造一个n个节点的带权树,且最大深度为deep,每个节点最多只能有2个儿子2、每个节点的值为2^0, 2^1 ··· 2^(n-1)  任意两个节点值不能相同3、对于一个节点,若他有左右儿子,则左子树的和 思路:设dp[ i ] [ j ]为结点数为i,深度不超过 j 的满足条件的树的个数。首先考虑invlid情况,即:dp[ i ] [ j ]

2015-01-26 15:50:52 959

原创 hdu 5052 Yaoge’s maximum profit 树链剖分 2014 ACM/ICPC Asia Regional Shanghai Online

题意:给定n个点构成的树,每个点都有点权。下面n行给出每个点点权表示每个点买卖鸡腿的价格下面n-1行给出树边下面Q个操作Q行u, v, val从u走到v,过程中可以买一个鸡腿,然后到后面卖掉,输出max(0, 最大的收益)然后给[u,v]路径上点点权+=x思路:树链剖分,做过bzoj2243后基本上稍微想下就会有思路。线段树中需要维护区间最大值Max,区间最小值

2015-01-26 15:08:34 1302 3

原创 uva11020 Efficient Solutions mutiset

题意:有n个人,每个人有两个属性x,y。对于一个人P(x,y),不存在另一个人P(x',y'),使得x'的,每次给出一个人的信息,输出当前多少人是有优势的。思路:窝们考虑用multiset维护,元素先按x升序,再按y升序排列。插入一个点时,判断它左边相邻点的y坐标是否比它小,如果比它大则该点有优势。加入multiset后,它会让一些点失去优势,从upper_bound开始到end大

2015-01-25 17:51:25 683

原创 hdu 4734 F(x) 数位dp

题意:定义 F(x) = An * 2n-1 + An-1 * 2n-2 + ... + A2 * 2 + A1 * 1(其中 x = AnAn-1An-2 ... A2A1),那么给定A,B,求[0,B]区间的i,满足F(i)的个数。思路:设dp[ pos ] [ k ]为当前考虑pos位,之后(pos + 1)位与之前的位数组合形成的F函数值不超过k的数的个数,详见代码:

2015-01-24 23:07:09 1892

原创 bzoj 2243 染色 树链剖分 好题!

题意:中文题。思路:很好的一道树链剖分。树剖后,线段树要记录左端点l,右端点r,左端点的颜色lc,右端点的颜色rc,区间成段更新的标记tag,区间有多少颜色段。区间合并的时候要注意如果左子树的右端和右子树的左端颜色相同那么数量要减一。但是存在一个问题当前剖到的链与上一次的链在相交的边缘可能颜色相同,如果颜色相同答案需要减一。所以统计答案的时候要记录下上一次剖到的链的左端点的颜色,与

2015-01-24 18:24:32 3004

原创 poj2763 Housewife Wind 树链剖分

题意:给定树的结点数n,初始起点s,有两个操作,(1) 0 u 查询从当前位置到u的时间,当前位置变为u  (2) 1 i w 修改第i条路花的时间为w。思路:树链剖分。剖分完,线段树单点更新,区间查询。详见代码:/********************************************************* file name: poj2763.cpp a

2015-01-24 17:51:54 1021

原创 hdu3709 Balanced Number 数位dp

题意:定义一个数为“balanced number” 当其满足存在一个数位pos(平衡点),在pos左边的数位的值乘与pos位的距离值的总和等于右边的数位的值乘与pos位的距离值的总和,给定一个区间[l , r],求区间内有多少个balanced number。思路:设dp[ pos ][ i ][ j ]表示平衡点在i位的情况下,当前考虑pos位,之前已形成的力矩为j(数乘以距离平衡点的

2015-01-24 17:33:00 1296

原创 poj2282 The Counting Problem 数位dp

题意:给两个数l,r,求[l,r]区间内这么多数包含多少个"0" "1" "2"..."9"。 比如[1 10] 除了"1"有2个,其余数字均只有1个。思路:数的范围为1e8,又是数的统计,一看就是数位dp。设dp[ i ] [ pos ] [ cnt ]为当前考虑数字为i,且当前考虑pos位,之前的位已经有cnt个数字i,之后(pos+1)位与之前数位组合含数字i的个数。那么除了数字

2015-01-22 20:47:07 913

原创 poj2195 Going Home 最小费用最大流

题意:给定n*m的矩阵 (最大100*100).为空地 H为房子 m为人 (题目保证 H的个数一个房子只能住一个人问:让每个人回到任意一个房子使得所有人需要步数最少,问最少需要多少步。思路:费用流,虚拟源点与人建边 费用为0, 一个人与所有房子建边,费用为步数, 房子与汇点建边费用为0所有边流量限制为1/*********************************

2015-01-22 18:12:20 818

原创 hdu3966 Aragorn's Story 树链剖分

题意:n个点构成的树,每个点都有一个权值。有三种操作: 1. I  a b  k 使a到b路径中所有点的点权增加k 2.  D a b k 使a到b路径中的所有点的点权减去k  3. Q  c 查询点c的权值。思路:树链剖分。剖分后,成段更新,单点查询,详见代码:/*********************************************************

2015-01-22 14:31:58 780

原创 hdu3987 Harry Potter and the Forbidden Forest 最小割割边最少

题意:给一个n个点构成的有向图,起点为0,终点为n-1。每条边有一个权值,删除一条边的代价为边权。问如何删除使得0和n-1不联通且代价最小,在这种情况下至少要删除多少条边。思路:首先保证代价最小,很容易想到是最小割,但是不知怎么保证割边最少= =看了大神博客。。恍然大悟。。模型真是见得少。。我们设一个较大的值N(N>数据给的最大边数),将边权变成w*N+1,那么最后求得的最大流对N

2015-01-21 16:43:04 630

原创 poj3237 Tree 树链剖分

题意:在spoj375基础上增加了一条路径的取反操作,其他都一样。思路:剖分没有变化,在线段树部分,需要一个tag标记该段是否需要需要取反,记录一个最大值、最小值即可。=  =(打tag的那段应该已经跟新好,push_down的时候如果tag=1那么直接对两个子段进行更新。。一开始意识模糊了。。)详见代码:/*************************************

2015-01-21 11:16:39 633

原创 fzu2082 过路费 树链剖分

题意:中文题。。思路:树链剖分后,在线段树上单点更新,区间查询。详见代码:/********************************************************* file name: fzu2082.cpp author : kereo create time: 2015年01月21日 星期三 09时21分42秒****************

2015-01-21 09:53:19 668

原创 spoj375 Query on a tree 树链剖分

题意:在一棵n个点构成的树上有两个操作。1.修改某条边的边权   2.查询两点之间最大的边权思路:基础的树链剖分。参见的是http://blog.sina.com.cn/s/blog_6974c8b20100zc61.html 看完就明白了。详见代码:/********************************************************* file na

2015-01-20 19:05:51 671

原创 hdu1569 方格取数(2) 二分图最大点权独立集

题意:中文题。。思路:首先根据横纵坐标之和的奇偶转化成二分图,对于( i , j )来说与它冲突的只有(i - 1 , j ) ( i , j - 1 ) ( i + 1 , j ) ( i  , j + 1 )4个方格,奇偶性相反。如果i + j是奇数那么和周围4点连边,那么问题转化求所有点权和 - 该二分图的最小点权覆盖 。我们关注最小点权覆盖模型,建立超级起点st,超级终

2015-01-20 18:45:35 897

原创 spoj8549 BST again dp

题意:给你n和h,问有多少棵n个节点高度为h的二叉搜索树(标号为1-n,只有一个节点的树高为0),答案对10^9+7取模。思路:设dp[ n ][ h ]为 n 个节点高度不超过 h 的二叉搜索树的个数。那么dpn,h=∑i=0n-1dpi,h−1⋅dpn−i-1,h−1  即选定一个点,枚举左子树的个数问为 i ,剩余右子树的个数即为n - 1 - i 。详见代码:

2014-12-06 10:04:22 974

原创 个人vim配置文件

runtime! debian.vimif has("syntax") syntax onendifif filereadable("/etc/vim/vimrc.local") source /etc/vim/vimrc.localendif"syntax high lightsyntax on"show the line numberset nu"为c程序提供自动缩

2014-11-21 20:52:39 658

原创 分数规划

2014-11-14 11:43:09 855

原创 bzoj1497 最大获利 最大权闭合图

题意:如题。。中文题。。思路:zui da

2014-11-13 20:50:48 997

原创 hdu4341 Gold miner 分组背包dp

题意:思路:

2014-11-09 16:26:07 670

原创 poj2373 Dividing the Path 单调队列dp

题意:思路:// file name: poj2373.cpp //// author: kereo //// create time: 2014年11月09日 星期日 10时21分51秒 ////***********************************//#include#include#include#include#include#include#

2014-11-09 15:53:07 784

原创 poj1821 Fence 单调队列dp

题意:思路:// file name: poj1821.cpp //// author: kereo //// create time: 2014年11月08日 星期六 22时14分37秒 ////***********************************//#include#include#include#include#include#include#

2014-11-09 15:32:50 1120

原创 poj2796 Feel Good 单调栈

题意:求一个区间[l , r]使得区间和乘以区间中最小值的值最大。思路:

2014-11-05 21:40:46 711

原创 poj3494 Largest Submatrix of All 1’s 单调栈+dp

题意:在一个n * m的0/1矩阵找一个最大的去

2014-11-05 21:32:22 735

原创 zoj2676 Network Wars 0-1分数规划 最小割的应用

题意:给定一个带权无向图G(V,E),每条表

2014-11-03 22:07:58 916

原创 poj3250 Bad Hair Day 单调栈

题意:思路:// file name: poj3250.cpp //// author: kereo //// create time: 2014年11月03日 星期一 13时28分00秒 ////***********************************//#include#include#include#include#include#include#

2014-11-03 16:42:48 811

原创 poj2486 Apple Tree 树形dp背包

题意:由n个结点组成的树,

2014-11-03 15:14:24 685

原创 poj2082 Terrible Sets 单调栈

题意:给定n个据新

2014-11-03 00:04:58 723

原创 poj1947 Rebuilding Roads 树形dp背包

题意:n个结点构成有

2014-11-02 23:53:12 675

原创 poj1741 Tree 点分治

题意:思路:

2014-10-18 17:44:19 662

原创 sgu 110 Dungeon 三维计算几何

题意:思路:

2014-10-16 22:06:33 893

原创 LA6578 Trending Topic (2013-2014 ACM-ICPC Southwestern Europe Regional Contest I题) 模拟

题意:思路:// file name: LA6578.cpp //// author: kereo //// create time: 2014年10月15日 星期三 23时11分51秒 ////***********************************//#include#include#include#include#include#include#i

2014-10-15 23:59:45 1408

空空如也

空空如也

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

TA关注的人

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