随笔分类 - OI刷题之路
狂奔的弱鸡qwq
摘要:树论 一道大水题,直接放代码: code: include include include include include define int long long define half (l+r) 1 const int maxn=2000006; using namespace std; in
阅读全文
摘要:线段树。 这道题乍一看是道dp,但是发现1e6的范围。。。~~~(N^2过百万)~~~并且有后效性qaqqqqqq...... 我的思路是这样的:考虑暴力,我们每次枚举左端点,O(n)求和,复杂度N^2。如何优化呢?考虑前缀和,当我们扫过某个点后会对答案产生什么影响?设NXT[ i ]表示i点之后第
阅读全文
摘要:思维题,套路题。 本来想在学完树形dp,开始做数据结构前~~刷几道水题~~愉悦一下身心,结果tm直接匹配了一道不用树形dp十分有意思的题 思路:考虑题目的转化:将删除的边数最小转化为留下的权值最大,用kruskal的思想加边,如果两点都是敌人直接切,如果一方是敌人,先不管,将另一方感染为敌人。这也是
阅读全文
摘要:树形dp碾压标算 这道题目我写了60分的暴力(N^2 k),没有优化,只是说一说树形dp相关。 这道题我们可以转化一下,我们可以考虑每一个点对答案的贡献。这道题可以转化为以该点为根的树中包含根的连通块,且其中有k个点大于等于根的危险度的方案数。这里“等于”有一定的问题,就是同一种连通块可能会被其他的
阅读全文
摘要:fij表示在dfs序序列上做了前i个点,已经选择了j个人的最大权值和。 那么如果这个点选fij− fi+1,j+1 如果不选fij− fi+sizei,j(表示跳过子树转移) code: for(i=1;i
阅读全文
摘要:树形dp 大水题,直接放代码了qwq(第二位用0 1 2表示三种状态,大力dp就好了) include include include include include include include include using namespace std; const int maxn=100006
阅读全文
摘要:树形dp 题目大意: 一个n结点的有根树,树边权均为正数,现在有q次询问,每次询问一个距离,问这个距离从0号点出发最多能经过多少点,同一结点多次经过算1次。 n include include include include include include using namespace std;
阅读全文
摘要:树状数组的灵活运用 http://codeforces.com/contest/1005/problem/E2 这道题直接暴力统计的复杂度是N^2的,不能通过这道题。考虑转化,令f[m]表示中位数m的数字的个数的差值,那么就利用树状数组,通过逆序对的思想边扫边更新,显然,对于每一个差值,之前有多少个
阅读全文
摘要:树形dp! 由于冷大佬的毒奶,我开始刷树形dp了, 先来一到~~签到~~题:[POI2011]DYN Dynamite 我们看到最大值最小,自然地想到二分,我们二分一个最大值,题目就转化为了一个点能覆盖mid范围内的点,求要有几个点能全部覆盖所有的特殊点。想到消防局的设立:但是这道题目又不能那么做。
阅读全文
摘要:1、尺取法 2、反转法:[USACO07MAR]面对正确的方式Face The Right Way 思路:主要是考虑一个点翻转两次后就会变回原样,然后用前缀和判断是否翻转就可以了: code: include include include include include include inclu
阅读全文
摘要:区间模型:坐标轴上有若干条线段,求要用多少点可以使得每条线段都覆盖了至少一个点。 贪心:主要是考虑比较函数的写法: 具体画一下就看出来了
阅读全文
摘要:安利一下blog,看一下:https://www.luogu.org/blog/Chanis/fhq treap code: include include include include include include include const int maxn=500006; int n,m,
阅读全文
摘要:先上例题:[HAOI2007]理想的正方形 大部分人都用单调队列,但我~~不会~~。首先我们可以暴力枚举所有的可能的正方形,每次我们需要查询RMQ,如果用朴素的方法总复杂度就会变成N^4,~~你不T谁T~~ 那怎么办,~~总不可能写正解~~吧,我们可以用二维st表,预处理N^2logN,每次O(1)
阅读全文
摘要:两天的锅:1、printf没加lld 2、用cin读入字符 3、交错文件
阅读全文
摘要:传递闭包是一种关于连通性的算法,她可以在 N^3的复杂度内求出所有点的所能到达的点集。 伪代码: 复杂度看起来很不友好,但经过bitset的一番 调教 后其变为了N^2; 放一道裸题:P4306 [JSOI2010]连通数 bitset的具体用法见大佬blog :https://www.cnblog
阅读全文
摘要:由于本蒟蒻太弱了,再加上刚开学心态没调整好,day 1直接炸穿,模拟都没写出来qwq。 在此只是更新一下题解 T1 自己找个骰子模拟; T2 很显然我们要枚举数列每个元素i,求1到i 1、i+1到n 中比它大的数的个数和比它小的数的个数,朴素的方法是N^2的,我们需要优化,我们可以先离散化,建一课1
阅读全文
摘要:本篇笔记主要是dp专题,由于本人太蒟蒻,大部分dp题都做不动,所以只是把题号整理一下 T1 BZOJ 2757: [SCOI2012]Blinker的仰慕者 T2 Luogu CF340E Iahub and Permutations T3 AHOI 2009 中国象棋 T4 Luogu CF375
阅读全文
摘要:Day 1 1、贪心的奇怪方法:调整法 调整法,顾名思义,就是用别的方式进行题目的分析以及证明,例如说 luogu的最大乘积 。这种题目的主要分析思路为:先考虑一些简单的情况,通过简单的情况来推出一些有用的结论以及性质 2、解决棋盘类问题的有效方法:奇偶调换法 这里举一个大水题: luogu 01迷
阅读全文

浙公网安备 33010602011771号