自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 收藏
  • 关注

原创 网络流二十四题整理

仅整理了一些不是很熟悉的建模方法太空计划问题题意:可以花钱买mmm种实验器材,这里有nnn种实验,每种实验需要不同的实验器材,做了实验有奖金,求最多可以获得的钱。解法:最大权闭合图建模:所有实验放左边,所有器材放右边。源点向实验连权值为奖金的边。器材向汇点连权值为花费的边,实验向所有需要的器材连权值为INF的边,若最小割跑出来是xxx,最后答案就是tot−xtot - xtot−x(to...

2019-08-04 16:05:29 229

原创 线性基

线性基什么是线性基高级:对于一个数字集合,基于异或运算的最大线性无关组。人话:给一个数组aaa,线性基是另一个数组bbb,且数组bbb中的元素任意组合异或起来可以表示出数组aaa中的任何元素组合异或。(数组bbb元素很少,log级别)有什么用对于给出的数组,求出其中任意元素组合异或的最大值,最小值,k大值。怎么搞依次遍历数组aaa中每一个元素xxx,看看它能不能放进线性基里(初始时线...

2019-07-29 10:32:04 378

原创 CF - 1156E - Special Segments of Permutation

https://codeforces.com/problemset/problem/1156/E合理分析复杂度想到正解但是不敢做系列预处理以每个点(若为iii)为区间最大的最长段,在该段统计答案。枚举该段左半段(或右半段)的元素(若大小为ppp),判断在另半段有没有a[i]−pa[i] - pa[i]−p存在(储存某个数在aaa数列中出现的位置即可O(1)O(1)O(1)判断),若存在即统计...

2019-05-07 22:23:42 419

原创 CF - 1156D - 0-1-Tree

https://codeforces.com/contest/1156/problem/D乱搞只连接0边搞成一个图,只连接1边搞成一个图。两个图中的联通块内每个点和别的点可以统计答案,贡献为cnt∗(cnt−1)cnt * (cnt - 1)cnt∗(cnt−1)(cntcntcnt是联通块内结点数量)然后先0再1的情况去枚举0到1的那个中间点vvv,用qqq 表示 vvv 所在0块的节...

2019-05-07 20:09:19 232

原创 中国剩余定理

别看了,我没学会暂时先搞一个板子过来嘿嘿嘿int CRT(int a[], int m[], int n) { int M = 1; int ans = 0; for(int i = 1; i <= n; i++) M *= m[i]; for(int i = 1; i <= n; i++) { int x, y; i...

2019-01-14 15:41:04 285 1

原创 [BZOJ]1010 玩具装箱

[BZOJ]1010题意:P教授要去看奥运,但是他舍不下他的玩具,于是他决定把所有的玩具运到北京。他使用自己的压缩器进行压 缩,其可以将任意物品变成一堆,再放到一种特殊的一维容器中。P教授有编号为1...N1...N的NN件玩具,第i件玩具经过 压缩后变成一维长度为CiCi.为了方便整理,P教授要求在一个一维容器中的玩具编号是连续的。同时如果一个一维容 器中有多个玩具,那么两件玩具之间要加入一

2017-04-17 21:34:07 2515 2

原创 [BZOJ]1072 排列

[BZOJ]1072题意:给一个数字串ss和正整数dd, 统计ss有多少种不同的排列能被dd整除(可以有前导0)。题解:除了有一个地方没想过去这基本上是道裸题。。 因为ss的范围很小所以可以状压用过的数字。 整除这种东西不好转移所以用余数为0来表示,dp[s][i]dp[s][i]表示用过的数字状态为ss,除以dd余数为ii的方案数是多少。 转移的时候考虑在ss的基础上添加一个数,即dp[s|

2017-04-16 07:41:51 500

原创 [BZOJ]1070 修车

[BZOJ]1070题意:nn辆车和mm个修车师傅,每个修车师傅修每辆车的时间以矩阵形式给出,求所用的最小平均时间。题解:最小费用最大流。 所用的总时间除以nn就是最后的平均时间,那么就是求最后的总时间。 可以考虑给师傅们分配若干修车任务,那么先后次序一定会影响最后的时间(在后面的要等着前面的修好了才能被修),倒数第kk个被修的对答案的贡献为k∗time[i][j]k * time[i][j],

2017-04-09 14:33:30 629

原创 [BZOJ]1069 最大土地面积

[BZOJ]1069

2017-04-09 14:32:07 461

原创 整体二分

整体二分笔记

2017-04-09 10:03:00 574

原创 [BZOJ]1030 文本生成器

[BZOJ]1030题意:  给出一个MM,表示有MM个字母是随机给出的,有很多种可能。再给出NN个字符串,求NN在MM中出现的可能个数。题解:  类似于[BZOJ]1009。未知字符求个数一般都是字符串Dp,解决方法类似。不过这个题要先转化为不出现的可能个数再拿总数减去。   这个题是多个串匹配,所以是AC自动机AC自动机,用dp[i][j]dp[i][j]表示到了第ii个字符(MM中),匹配到

2017-04-09 09:58:48 381

原创 [BZOJ]1027 合金

[BZOJ]1027题意:  给出一些材料,由三部分组成,给出一些目标材料,要求选择最少种的当前材料能够融合为所有的目标材料。题解:  做这个题的前提是要知道三种材料可以用两种来表示,这样每种材料就可以抽象成平面上的点。接着因为它没有限制材料的多少,所以两种材料可以组成它们连线之间的所有材料。简单再想一想可以知道一堆点组合成的闭包是它们可以组成的所有材料,所以问题就是求一个最小环使得包含所有的目标点

2017-04-09 09:57:49 469

原创 [BZOJ]1026 Windy数

[BZOJ]1026题意:  给出[L,R][L,R],求区间内的数有多少满足相邻位数之间差的绝对值超出了2。题解:  一眼数位Dp一眼不了的建议学一下数位Dp,然后转化成前缀和的形式来计算。   数位Dp多以位数为阶段,考虑每一位填什么来转移。为了方便枚举到所有的情况,状态设为dp[i][j][k][l]dp[i][j][k][l]表示填到了第ii个数,前一位是jj,kk是0/10/1表示是否贴

2017-04-09 09:56:22 305

原创 [BZOJ]1025 游戏

[BZOJ]1025题意:  给出nn的最大值,求在nn的所有置换中经过不停置换最后重新变成有序的列表不同的排有几种。题解:  首先要知道一个知识:任何一个置换都可以由一些循环的乘积得来。这样的话不同的循环有各自的循环节,长度为nn的循环其循环节是nn,那么问题转换为将nn分解成若干个数这些数有多少种不同的lcmlcm。   1是不影响lcmlcm的,所以合数的情况都可以用质数来表示,而不同的质

2017-04-09 09:55:12 399

原创 树链剖分

树链剖分

2017-03-23 10:14:17 382

原创 [BZOJ]1023 仙人掌图

[BZOJ]1023题意:  给出一颗仙人掌,求仙人掌上两点间最短距离的最大值(即仙人掌的直径)。题解:  树的直径可以用Dp来搞一搞,这个仙人掌其实也类似。   如果用f[i]f[i]表示从ii向下扩展的最大距离,而且这颗仙人掌上没有环,我们就可以用这样的方法去更新答案:ans=max(ans,f[u]+f[v]+2)ans = max(ans,f[u] + f[v] + 2)   其中uu和

2017-03-17 20:09:06 648

原创 [BZOJ]1033 杀蚂蚁

模拟

2017-03-16 09:30:58 648

原创 [BZOJ]1022 小约翰的游戏

[BZOJ]1022题意:  有一堆什么东西,A先手取,B后手,每次可以取走一整堆或者是一部分(至少取走一个),谁拿了最后一个谁赢,给出每堆的数量,求A必胜还是B必胜。题解:  反Nim游戏故作高深,实际上并不知道啥叫Nim游戏,反正这个东西就是反Nim。   对于这个东西来说,如果所有的堆数量都为1的话,SG函数值为0的话A赢,否则B赢。   如果所有的堆数量不一定都为1,SG函数值不为0的话

2017-03-11 19:07:43 346

原创 [BZOJ]1021 循环的债务

[BZOJ]1021题意:  给出三个人之间的欠钱关系和他们各自持有的钱币种类和个数,求能不能各自把钱还清,如果不能输出”Impossible”,如果能输出最小的给钱张数。题解:  Dp太神了!(弱菜自带遇Dp必跪flag)总之就是Dp。     可以按钱币种类划分阶段,那么方程可以为dp[i][j][k]dp[i][j][k]表示用上了前i种钱币,达到了让第一个人有j块钱,第二个人有k块钱(因为

2017-03-11 17:50:16 1106

原创 [BZOJ]1020安全的航线

[BZOJ]1020题意:  给出一条折线和很多个多边形,求折线上的点到多边形距离最小值的最大值。题解:  ①二分答案加检验:二分一个最大值,扩展所有多边形的边,如果覆盖了折线上所有的点说明可以满足,接着二分即可。   ②迭代思想的应用:将所有可能的答案加入队列,即把给出的所有线段加入一个队列里,每次取出队头线段,找到端点aa距离多边形最近的点xx,端点bb距离多边形最近的点yy,在这条线段上二分

2017-03-11 06:22:36 710

原创 [BZOJ]1018 堵塞的交通

Description 有一天,由于某种穿越现象作用,你来到了传说中的小人国。小人国的布局非常奇特,整个国家的交通系统可 以被看成是一个2行C列的矩形网格,网格上的每个点代表一个城市,相邻的城市之间有一条道路,所以总共有2C个 城市和3C-2条道路。 小人国的交通状况非常槽糕。有的时候由于交通堵塞,两座城市之间的道路会变得不连通, 直到拥堵解决,道路才会恢复畅通。初来咋到的你决心毛

2017-03-06 08:21:48 586

原创 [BZOJ]1009 GT考试

神题

2017-03-01 15:38:11 671

原创 [更新]BZOJ代码

戳一下更新1000#include <iostream>using namespace std;int main(){ int a,b; cin>>a>>b; cout<<a + b<<endl; return 0;}1001#include <cstdio>#include <cstring>#include <iostream>//By sssSSSa

2017-02-12 21:37:27 522

原创 [更新]BZOJ

持续更新

2017-02-12 16:50:21 577

原创 【HEOI】兔子与樱花

兔子与樱花

2017-02-08 09:18:43 1537

原创 Treap模板(第K大,插入删除查找)

#include <time.h>#include <cstdio>#include <cstring>#include <cstdlib>#include <iostream>//By sssSSSay//On 2017 . 2 . 6//Today White Eve#define Lc (o -> Ch[0])#define Rc (o -> Ch[1])#define v

2017-02-07 07:13:45 900

原创 莫队(三)核心代码实现

莫队(三)核心代码实现

2017-01-13 08:01:10 354

原创 莫队(二)原理及基本思想

莫队(二)原理及基本思想

2017-01-05 21:42:23 438

原创 莫队(一)一些介绍

莫队(一)

2016-12-30 12:06:13 332

原创 网络流24题 魔术球问题(弱化?)(二分图解)

魔术球问题弱化(伪)

2016-12-30 11:35:12 572

原创 NOIP2016爆炸记

Day 0

2016-11-22 17:21:48 318

原创 模拟赛之AB串

AB串 模拟题

2016-11-16 21:16:19 592

原创 长沙培训杂记d

培训

2016-10-13 08:24:23 723

转载 分治算法求最近点对

分治

2016-10-10 20:25:38 1156

原创 线段树(二)区间最值

线段树(二)

2016-10-10 15:01:21 512

原创 线段树(一)概念

线段树(一)

2016-10-10 08:07:57 282

原创 Openjudge 8465 马走日

马走日链接经典回溯题目给出棋盘和初始坐标 问这个马有多少种方法遍历整个棋盘思路从初始点开始遍历每一个方向  并查看新点有没有被遍历过如果没有就走出一步并在这一步继续搜搜完需要回溯(恢复搜之前的状态)如果搜索的深度达到N*M(即棋盘大小)  则遍历到了所有点  答案++直到遍历完所有方案

2016-10-09 18:35:52 976

原创 最短路(一)Floyd

FloydFloyd一般作为最短路入门算法来讲解思想对于每一个点对,寻找一个中间点使得它可以更新两个点的距离应用Floyd除了用于最短路,在其他方面也有应用传递闭包:如果喜欢有传递性,A喜欢B,B喜欢C,现在询问A是否喜欢C.这类问题统一具有传递性转化为图的话,就是给出一些点后检验某两点是否联通,代码在下面代码最短路for(int k=1;k<=n;k+

2016-10-09 18:22:51 391 1

转载 因为我们是Oier

我们是OIer, 所以我们 不用在跑道上挥汗如雨; 不用在球场上健步如飞; 更不用在没事的时候, 经受非人的体能训练……但是, 我们却要把头脑 高速运转, 还要接受一大堆 大学生也只是 “了解即可”的知识, 把一个个抽象的问题 转化为一篇篇 优美的代码, 才能在F9按下以后 获得欢呼。不要以为我们 机房里没有风吹, 

2016-09-05 15:57:34 3424 4

原创 洛谷 P1111 修复公路

修复公路题解

2016-08-07 11:47:01 644

空空如也

空空如也

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

TA关注的人

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