博客专栏  >  编程语言   >  BZOJ刷题记录

BZOJ刷题记录

一入OI情似海

关注
1 已关注
62篇博文
  • 4557: [JLoi2016]侦察守卫|树形DP

    let’s Orz yts大爷//#pragma comment(linker, "/STACK:20240000,20240000") #include #include #include #in...

    2016-05-02 09:42
    3351
  • 2670: Almost|分块|三分

    先处理出前缀和sumisum_i 区间[l..r][l..r]的几乎平均数为sumr−suml−1r−l\frac{sum_r-sum_{l-1}}{r-l} 也就是求一个斜率的最大值,假如左端点...

    2016-04-26 16:17
    577
  • 4521: [Cqoi2016]手机号码|数位DP

    数据范围这么小..感觉暴力可过啊.. DP也是随便设计状态 F[i][j][k][s][l]F[i][j][k][s][l] 表示前ii位,最后一位是jj 最后一位连续出现kk次(如果k已经等于3...

    2016-04-24 16:36
    2853
  • 4537: [Hnoi2016]最小公倍数|分块

    暴力的做法就是直接找到所有a,ba,b都小于等于某个询问的边然后并查集合并,维护每个集合的a,ba,b得最大值看是否等于询问的a,ba,b 然后就可以考虑分块,把边按照aa排序,每隔n−√\sqr...

    2016-04-24 14:36
    1003
  • 4542: [Hnoi2016]大数|莫队

    HN一天考两个莫队是什么鬼..或者说莫队不是正确的姿势..? 考虑已经知道了l..rl..r的答案新添入r+1r+1如何更新当前答案 需要先预处理出后缀modpmod p的值bib_i,假设子序列...

    2016-04-23 19:16
    2593
  • 4540: [Hnoi2016]序列|莫队+ST表

    考虑现在已经知道了[l,r][l,r]的答案新添入一个r+1r+1如何更新答案 也就是右端点在r+1r+1处左端点在l..r+1l..r+1之间的所有的子序列的答案 可以找出l..rl..r中最小...

    2016-04-23 09:06
    2234
  • 2959: 长跑|LCT+并查集

    慎入…此人代码自带5倍常数。。 静态的话就是随便搞出一棵生成树来,然后把环缩起来,询问的答案就是路径上的权值和 动态的就需要LCT来维护生成树,每遇到连起边来就形成环的情况时,就把这个环缩成一个点...

    2016-04-21 10:00
    524
  • 3073: [Pa2011]Journeys|线段树|BFS

    一种比较暴力的方法就是直接线段树优化建图,跑dijkstradijkstra 但是这题的边权都是11可以考虑BFS的方法 首先按照yy将所有的边排序,然后按照xx的大小插入到线段树中 这样每次询...

    2016-04-18 15:30
    604
  • 3589: 动态树|树链剖分|线段树

    直接树链剖分,然后查询一段路径的时候顺便在线段树中打上标记,如果再查到这个地方的时候就直接忽略掉这部分对答案的贡献#include #include #include #include #includ...

    2016-04-18 15:16
    510
  • 4456: [Zjoi2016]旅行者|分治+最短路

    每次将矩形划分成两个部分,枚举中间点跑最短路更新答案,不断递归分治#include #include #include #include #include #include #include #inc...

    2016-04-18 15:13
    841
  • 4455: [Zjoi2016]小星星|状压DP|容斥原理

    OrzSDOIR1ak的晨神 可以考虑状压DP枚举子集,求出只保证连通性不保证一一对应的状态下的方案数,然后容斥一下就是最终的答案#include #include #include #includ...

    2016-04-18 15:08
    814
  • 1808: [Ioi2007]training 训练路径|树形DP

    http://adn.botao.hu/?p=80胡波涛的题解说的很详细,这里就不赘述了#include #include #include #include #include #include #i...

    2016-04-18 15:04
    586
  • 2164: 采矿|树链剖分|DP

    DP比较显然,但是直接DP会Tle,这时需要树链剖分用线段树维护dp值同时维护链上的和子树的dp值#include #include #include #include #include #inclu...

    2016-04-18 14:58
    455
  • 4518: [Sdoi2016]征途|斜率优化

    裸的斜率优化。。我考场上SB#include #include #include #include #include #include #include #include #include #incl...

    2016-04-15 08:33
    1142
  • 4514: [Sdoi2016]数字配对|费用流

    这道题只要看出是个二分图就可以直接费用流搞一搞了#include #include #include #include #include #include #include #include #inc...

    2016-04-15 08:27
    928
  • 4516: [Sdoi2016]生成魔咒|后缀数组|线段树|ST表

    将原串倒过来,每次添加一个字符相当于增加一个后缀。 问题转化为向集合中动态添加后缀求本质不同的字串的个数,离线求出SASA 找出当前添加的串与集合中的串的最大的LCPLCP,就是重复出现的子串的个...

    2016-04-15 08:22
    888
  • 3160: 万径人踪灭|FFT|manacher

    答案可以转化为所有的回文子序列减去回文子串 回文子串的个数可以用manachermanacher来求出 回文子序列的个数可以这样求: 先求出以每个点为中心左右对称的点的个数xx,那么以这个点为中...

    2016-04-07 17:19
    2343
  • 2194: 快速傅立叶之二|快速傅里叶变换

    很容易发现就是把bb序列反过来直接FFT搞一下#include #include #include #include #include #include #include #include #incl...

    2016-04-07 14:14
    2184
  • 2179: FFT快速傅立叶|快速傅里叶变换

    背板子大法吼#include #include #include #include #include #include #include #include #include #include #inc...

    2016-04-07 07:37
    1064
  • 2124: 等差子序列|线段树维护哈希值

    集训队的题是厉害啊 从左到右枚举每一个数作为等差序列的中间项,判断是否存在等差子序列 考虑枚举到一个位置ii,假设a[i]−xa[i]-x在前面出现过,那么如果不存在等差子序列,a[i]+xa[i...

    2016-04-06 11:34
    1464

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部