自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

呆头呆脑没有烦恼

鳗鱼饭yyds

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

原创 ural1019 找最长全白线段

【题目描述】        先是在数轴区间 0 到10^9 (10的9次方)之间画上了白色。然后,这个区间的某一些部分又画上了黑色。然后某一些部分又画上白色,等等。请你找出经历M(1 <= M <= 5000)次重着色后,最长的白色区间。【输入格式】        首行位N,以下N行位重着色的信息,每一行格式如下:ai bi ci 这里 ai ,bi 都是整数, ci 为字符'b' 或...

2018-03-28 22:35:19 538

原创 Codeforces 703D

Problem对于一个由N个数组成的序列,有M次询问。每次问a[l ~ r]这个区间里,出现次数为偶数的数的异或和(没出现的数不算)。Solution由于是静态的区间处理,首先想到莫队。但是1e6的数据量,显然N*sqrt(N)就已经1e9了。然后我和队友展开了激烈的讨论。我这种位运算的蒟蒻,显然没想到这个性质。感谢我机智强大的队友。于是我就被启发了!!如图。最后我的思路卡在了如何弄偶数。emmm...

2018-03-25 15:12:09 339

原创 斜率优化

Problem:任务安排有N个任务排成一个序列在一台机器上等待执行,顺序不得改变。要把N个任务分成若干批,每一批当然是连续的若干个任务。从0时刻开始加工(只有一个机器,单线程),执行第i个任务所需时间为T[i]。在每批开始前,机器需要S的时间来开机。且一批中的任务是等这一批全被处理完才一起结束。易得,若j属于第x批任务(k为这批任务的最后一个),那他要等的时间为S*j + sum(1 ~ k)。每...

2018-03-23 22:56:25 319

原创 2-SAT练习 poj3683

ProblemSolution既然要求时间不冲突,那么我们就O(n²)的去寻找冲突的时间对。若对于A这对夫妻与B这对夫妻,A[i]时间举行仪式和B[j]时间举行仪式的时间是冲突的(恰好无缝衔接不算冲突),那么就说明如果在A[i]时间举行仪式,一定就要在B[j^1]时间举行。若在B[j]时间举行,也一定要在A[i^1](这恰好是一个命题与他的逆否命题)。于是我们就可以按2-SAT的套路去解题了。直接...

2018-03-18 16:31:21 233

原创 2-SAT

ProblemN个变量,每个变量只有2种可能的取值。再给M个条件,形如“若变量A[i]赋值为A(i, p),那么变量A[j]就必须赋值为A(j, q)”,其中p,q∈[0, 1]。问是否存在合法赋值,满足所有条件。Solution(1)建立2*N个节点的有向图,每个A[i]对于两个节点,不妨设为i和i + N。(2)考虑每个条件,从i + p * N发出有向边到j + q * N。(3)对于每个条...

2018-03-17 22:09:15 479

原创 HAOI2017 新型城市化

Problem现有由n个城市构成的一个无向图。保证,取出最大团后,剩下的也是一个团。然后问,再加哪条边,可以使最大团数目改变?Solution其实这个题的输入已经十分的给面子了。给的是补图。补图的最大独立集,就是原图的最大团了。而补图是个二分图,n-最大匹配数就是最大独立集。我们如果使最大匹配数减少,那么最大独立集数就会增加,原图最大团也会增加。既然如此,我们就找出补图中的最大匹配必须边。即为答案...

2018-03-13 18:52:16 388

原创 最大独立集

独立集:给一无向图,找出一个点集,使得任意两点之间都没有连边,这个点集就是独立集。而点最多的独立集,就是最大独立集。对应地,任意两点之间都有边,我们称之为团。同时也有最大团。定理:无向图的最大团等于其补图的最大独立集。若我们求解一个一般无向图的最大团、最大独立集,这都是NPC问题。(NP完全问题,此类问题目前只能暴力搜索,无多项式时间的解法)但是二分图就不一样了。对于一个有n个节点的二分图,最大独...

2018-03-11 21:27:44 6772

原创 二分图的覆盖

最小点覆盖,即用最少的点去覆盖所有的边。(只要一条边的一个节点被标记,那这一条边就被覆盖啦!)解法:二分图最小点覆盖包含的点数等于二分图最大匹配的边数。惊不惊喜意不意外!!!!思考一下会不会存在一种情况,使得一条边的两个点都被选择?当然有可能!主要还是难在构图的。来看俩题意思一下。poj1325:有两台computer及N个任务,每台computer有M种模式。对于每个任务给定a[i],b[i],...

2018-03-11 21:15:28 560

原创 多重匹配

广义的二分匹配。每个boyi最多可以同时和kl[i]个girl在一起,每个girli最多可以和kr[i]个boy在一起。(这样比喻多好理解)解决方案:1、拆点。2、如果有一边所有的人都比较保守,只能和一个人在一起,那么我们考虑:如果把这些点都弄到右边,可以在dfs时直接给每个左边的点做kl[i]次;如果都弄到左边,那让右边的节点可以匹配kr[j]次,若超过次数,就尝试递归当前已和她匹配上的这些节点...

2018-03-11 19:10:16 617

原创 骨牌覆盖问题

ycjh期间,本蒟蒻用状压dp成功解决了工坊二题目。(其实就是状压裸题,并且还简化了)王程教授说了句话:“如果扩展到180呢?怎么办?”当时我就想到了二分图匹配。但是我那时并不会啊。而且我构图也差,也没细想二分+最大流。经典题目:给定一N行M列的棋盘,某些格子禁止放置。有长2宽1的多米诺骨牌,并且禁止骨牌重叠,问最多能放多少块?构造二分图匹配模型有两个要素:(1)节点能分为独立的两个集合,每个集合...

2018-03-11 18:53:54 1067

原创 对顶栈的深入理解

由于hdu4699,感受到了对顶栈的厉害所在。于是,以后遇到,有光标,一次只移动一位,且添加、删除均是点操作且位置一定在光标左右时,都考虑对顶栈解决。也不知道为什么这个题不能加读入优化。是我太弱了。#include <cstdio>#include <cstring>int n, f[1000010], sta1[1000010], sta2[1000010], p1,...

2018-03-11 12:59:47 969

原创 二分图匹配(不带权)

首先,一张无向图是二分图,充要条件为,不存在奇环(边的数量为奇数)。于是可以黑白染色去判定。若有冲突的,就不是二分图。再来看二分图最大匹配。不带权的那种。我们定义一个名词:增广路。若对于一组匹配,存在一条从非匹配点到另一个非匹配点的路径path,使得非匹配边与匹配边在path里交替出现,那么path就是这个匹配的增广路。显然增广路的长度是奇数,且第奇数条都是非匹配边,偶数条都是匹配边。所以我们可以...

2018-03-09 22:58:42 226

原创 CCC2018有感

时间:2018年3月8日15:00-19:00  地点:清华大学东主楼实验室机房223Problem 1给两个字符串,忽略大小写比大小。输出那个字典序小的字符串(要转成全小写输出)。Problem 2给一简单表达式,形如 A ※ B = C。※可以是加、减、乘。也是字符串形式给出。会把A这个数字的某些位置挖成大写字母。大写字母的总种类数(即未知数数量)最多9个,并且只能取1-9,且不同未知数代表的...

2018-03-09 21:38:11 1046 3

原创 bzoj1123(权限题)

割点的题目,一定要考虑全面。注意有序点对,必须×2。因为删掉割点的所有边后,可能形成的连通块有:1、孤单的节点i自己  2、i的儿子的子树们 3、除了这些点,剩下的所有点构成一个//权限题 #include <cstdio>#define N 100010#define M 500010#include <algorithm>using namespace std...

2018-03-07 21:31:14 469

原创 Tarjan算法(一)——无向图中的割边、割点判定

Tarjan这个人啊,你们可能不太了解,但是,他创造的算法你们一定就听过了——Splay、lct……我们今天来看以他名字命名的图论算法。介绍三个东西。dfn:时间戳没什么好说的。搜索树:dfs这些点的时候,遍历的边必定是构成一棵树的(一个点只经过一次)。low:追溯值。一个节点i的追溯值要么是自己的dfn,要么就是另外一个点的dfn(这个点满足:只通过一条不在搜索树上的边,可以到达...

2018-03-07 21:14:15 1801

空空如也

空空如也

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

TA关注的人

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