Heret1c

以梦为马 莫负韶华

2018-2019 ACM-ICPC, Asia Jiaozuo H - Can You Solve the Harder Problem?

Portal:GYM-102028H 题意: 求所有本质不同子序列的最大值的和。 思路: 参考本质不同的子串做法处理本质不同子序列:后缀数组,heightheightheight部分的子串就是没有贡献的子串。 考虑以位置 iii 为左端点的所有子串答案的求法,找到 iii 后第一个大于 ...

2019-04-03 11:25:08

阅读数 487

评论数 0

老年(已退役)选手复习计划 PART2

放上来有些符号产生了一点偏差。。不知道怎么变成了问号。。比较懒懒得改了。。意会,意会。。2017.7.4: 概率与期望: 1.BZOJ1415:预处理p[x][y]表示,猫在x,鼠在y时猫下一步走哪里。然后记忆化搜索。 2.BZOJ3450:再求一个期望长度就好解决了。斜率优化: 1.BZ...

2017-07-25 15:53:51

阅读数 371

评论数 0

老年(已退役)选手复习计划 PART1

HN集训的时候电脑坏了。。。回来以后拿去修结果去NOINOI都没能带自己的电脑。。也没来得及发这个东西了。。妈耶能拿分的题知识点我没复习到,果然NOINOI全程血妈崩哦。退役选手还是散发一点点的光和热吧QAQQAQ。 一篇放不下。。分两篇放。2017.6.29: 网络流: 1.BZOJ139...

2017-07-25 15:48:59

阅读数 476

评论数 0

BZOJ4028: [HEOI2015]公约数数列

BZOJ4028看着这么神的题,最后发现是个“聪明人”打的暴力。。 首先进行分块,维护每一块内的Gcd和XorGcd和Xor,每个块内存下二元组x,Xorx,Xor表示位置和当前位置的亦或值,按照亦或值为第一关键字排序。 对于一次修改就将块内信息重新维护,每次O(n√logn√)O(\sqrt...

2017-06-16 11:16:35

阅读数 350

评论数 0

BZOJ3994: [SDOI2015]约数个数和

BZOJ3994d(x)为x的约数个数d(x)为x的约数个数 求∑ni=1∑mj=1d(i,j)\sum_{i=1}^n\sum_{j=1}^m d(i,j) 有个很神奇的结论。。上式=∑i=1n∑j=1m[gcd(i,j)==1]ni∗mj上式=\sum_{i=1}^n\sum_{j=1}^...

2017-06-16 10:34:08

阅读数 505

评论数 0

BZOJ4177: Mike的农场

BZOJ4177MDMD考的时候还想半天,这TMTM不就是文理分科吗。真的sbsb了。赶紧退役算了。。 SS向nn个点连边(S,i,ai)(S,i,a_i) nn个点向TT连边(i,T,bi)(i,T,b_i) 对于mm每条规则(i,j,k)(i,j,k),连边(i,j,k)(i,j,k)和...

2017-06-16 10:06:34

阅读数 489

评论数 0

BZOJ4170: 极光

BZOJ4170对于graze(x,y)=|x−y|+|a[x]−a[y]|<=kgraze(x,y)=|x-y|+|a[x]-a[y]|<=k 将位置看做xx坐标,aa值看做yy坐标。就是求和某个点的曼哈顿距离小于等于kk的点数个数。 发现这个范围是一个菱形。将坐标系旋转一下。(...

2017-06-16 09:57:42

阅读数 367

评论数 0

BZOJ4169: Lmc的游戏

BZOJ416930分的暴力,当n<=10n<=10时,还是很好做的辣、 就是给每个叶子节点固定权值。然后树形dpdp就可以了,因为一个点被先手或是被后手取是确定的,就很好写了。n<=200000n<=200000时肯定就不能枚举了。。 既然无法确定叶节点权值,那么转化...

2017-06-16 09:24:38

阅读数 265

评论数 0

BZOJ4027: [HEOI2015]兔子与樱花

BZOJ4027一开始想的都是二维的dpdp。。数据这么大怎么转移啊QAQQAQ。 后来发现原来贪心就行辣。。。 直接记ansi=soni+cians_i=son_i+c_i,那么将这个点删除对应着其父节点+=ansi−1+=ans_i-1 那么对于某个点xx,将儿子的ansans值从小到大...

2017-06-16 08:39:59

阅读数 288

评论数 0

BZOJ4517: [Sdoi2016]排列计数

BZOJ4517对于一组数据n,mn,m。ans=Cmn∗dp[n−m]ans=C_n^m*dp[n-m] dp[i]dp[i]表示ii的错排数。 那就是考虑如何求dpdp数组了。求dpndp_n: 1.将第nn个数放入前n−1n-1个任意一个中,有n−1n-1种,记放的位子为kk. 2....

2017-06-12 17:03:00

阅读数 279

评论数 0

BZOJ4516: [Sdoi2016]生成魔咒

BZOJ4516每次在结尾添加一个数,相当于添加一个前缀。 那么倒过来看,变成每次在开头添加一个数,也就是添加一个后缀。 假若新的后缀长为xx,那么相当于在原有的基础上增加了xx个串,假设其中有yy个串已经出现过。 那么ansi=ansi−1+x−yans_i=ans_{i-1}+x-y ...

2017-06-12 16:47:19

阅读数 171

评论数 0

BZOJ4514: [Sdoi2016]数字配对

BZOJ4514看到题目很容易发现是最大费用最大流。 关键点就是如何分成二分图。 (QAQQAQ涨姿势了) 把每个aa分解质因数: a=∏pixia=\prod {p_i}^{x_i} 记Numi=∑xNum_i=\sum x那么可以发现可以根据NumiNum_i的奇偶性构造二分图。 ...

2017-06-10 16:22:23

阅读数 641

评论数 0

BZOJ4031: [HEOI2015]小Z的房间

BZOJ4031任意两点若都不是柱子,视为可连边。 然后矩阵树定理就好。【代码】#include <cstdio> #include <iostream> #include <algorithm> #include <cstring> #inclu...

2017-06-10 08:52:11

阅读数 199

评论数 0

BZOJ4596: [Shoi2016]黑暗前的幻想乡

BZOJ4596题意:有NN个城市,N−1N-1个公司,每个公司可以修建的路有mim_i条。 让每个公司修一条路,使得NN个城市构成一棵树 。求方案数。学习了一下高斯消元的辗转相除做法。QAQQAQ,伏地膜。那么这个题容斥一下,N−1N-1个人的方案数-N−2N-2个人的方案数+N−3N-3个人...

2017-06-10 08:14:48

阅读数 436

评论数 0

BZOJ4597: [Shoi2016]随机序列

BZOJ4597一开始看题一脸不可做的样子。。肯定又有什么鬼畜的结论QAQQAQ。 (看看题解之后)。。和加减没什么关系。。维护一下前缀积的和就好了。 QAQQAQ然后自己拿n=3n=3手写试了一发。。md为什么不自己想。。 ans=∑i=1n−1(2∗3n−i−1∗∏j=1iai)+∏j=...

2017-06-09 20:30:47

阅读数 251

评论数 0

BZOJ4592: [Shoi2015]脑洞治疗仪

BZOJ4592(吐槽一下dsydsy,我=这个数据=了一天我xxx!!xxx!!)一开始看到这个题。诶,区间连续最大和诶!把脑洞的值为1,正常的赋为−INF-INF 但是操作1怎么办。。 发现就是先统计出l0到r0l0到r0区间内−INF-INF的个数tottot,然后区间赋为1. 然后统...

2017-06-09 20:20:02

阅读数 378

评论数 0

BZOJ4590: [Shoi2015]自动刷题机

BZOJ4590sbsb二分题 我CTM-1打成-2!!? 判无解的时候都要checkcheck一下。。不能=0就出-1.【代码】#include <cstdio> #include <iostream> #include <algorithm> #incl...

2017-06-08 18:25:11

阅读数 225

评论数 0

BZOJ1907: 树的路径覆盖

BZOJ1907其实挺sbsb的一个树形dpdp。。我这种sbsb都会的树形dpdp。。 。。我的做法很鬼畜。 fx,0,fx,1f_{x,0},f_{x,1}分别表示点xx作为转折点(也就是连成一个VV字形)/非转折点,覆盖该子树的最小路径数。 记vv为xx的儿子节点,sum=∑min(f...

2017-06-08 17:23:14

阅读数 310

评论数 0

BZOJ4598: [Sdoi2016]模式字符串

BZOJ4598求树上满足某些条件的点对,首先就可以想到点分治。 然后又与什么字符串匹配有关。KMP,AC自动机……KMP,AC自动机……之类的好像不太好用。。那就哈希吧! 添加答案的时候有两种情况: 那么就分别维护从上到下的链和从下到上的链。不是所有链都存的,仅当“从该点到当前根的一段是若...

2017-06-08 15:56:17

阅读数 351

评论数 0

BZOJ4815: [Cqoi2017]小Q的表格

BZOJ4815b×f(a,a+b)=(a+b)∗f(a,b)b×f(a,a+b)=(a+b)*f(a,b)很像辗转相减法。。 那么每次修改点(a,b)(a,b)的值,会修改所有满足gcd(i,j)==gcd(a,b)gcd(i,j)==gcd(a,b)的点(i,j)(i,j)的值。 记d=g...

2017-06-08 15:25:04

阅读数 445

评论数 0

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