自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 [CF1228] 简要题解

A题意求\(l \le x \le r\)的所有数位不同的数\(x\), 任意输出一个.\(1 \leq l \leq r \leq 10 ^5\)Solution按照题意模拟即可.#include <bits/stdc++.h> using namespace std;#define rep(i, a, b) for (int i = (a), i##_e...

2019-10-03 15:09:00 138

转载 [CF895E] Eyes Closed(线段树,期望)

Desctiption传送门:Portal大致题意: 给你一个序列, 支持两种操作:1 l1 r1 l2 y2 在\([l1, r1]\)随机选择一个数a, \([l2, r2]\) 内随机选择一个数b, 交换a, b.2 l r 询问一个区间的期望.\[n \leq 200000; a_i \leq 1e9\]Solution根据==期望线性性==,只需要维护出=...

2019-09-12 11:41:00 153

转载 [CF1202B] You Are Given a Decimal String(最短路)

Description今天突然想来发一篇博客防死[Portal][https://vjudge.net/problem/2650668/origin]定义被x-y生成器生成的序列为, 一开始有一个数字S = 0, 每次输出S % 10, 然后把这个数字加上x或y.现在给你一个串, 对于$0\leq x, y \leq 9 $要你计算至少要在串中插入几个数位才能将其变成正确的x -...

2019-08-16 19:33:00 116

转载 [arc063]F.すぬけ君の塗り絵2

因为这题考虑可以观察一个性质,答案的下界为\(2×(max(w,h)+1)\), 因为你至少可以空出一行或一列,因此这个矩形一定会经过 \(x=\frac{w}{2}\) 或 \(y=\frac{h}{2}\) . 先考虑经过 \(\frac{w}{2}\) 的情况 , 另一种情况是一样的.先将坐标离散化.枚举矩形的上边界 \(yR\) ,对于每一个下边界 \(yL\) , 我们可以...

2019-05-30 19:38:00 96

转载 访问量破千辣!

20190313:转载于:https://www.cnblogs.com/qrsikno/p/10526694.html

2019-03-13 21:33:00 68

转载 [51Nod1952] 栈

Description不支持后端删除的dequeue,每次操作后查询最大值.\(n\leq10^7\).时限1.5s,不用考虑读入/输出复杂度.Solution首先考虑如果没有后端删除怎么做, 直接开一个普通栈, 一个单调栈, 一边模拟一边算.因为没有后端删除, 所以你维护一个单调队列就可以了.需要用到一些实现上的细节技巧. 就是单调数据结构删除不是很好模拟.考虑开一个普通...

2019-03-07 19:13:00 68

转载 [CF1110F] Nearest Leaf

Portal一棵n个点的有根树,规定一种dfs序,\(m\)次询问一个点\(u\)和一个区间\([l,r]\),求dfs序在这个区间内的叶子中,到\(u\)最小的距离。n,m≤500000这题在线直接搞很难搞, 考虑离线.一开始想到就是按照区间来离线, 把询问挂在某个端点上. 但是没有什么可以利用的性质(比如说要求单调可以单调队列), 所以弃掉.考虑按照询问点来离线,然后考虑一...

2019-02-12 14:19:00 101

转载 [CF1111D] Destory the Colony

Portal大致题意: 给定一个偶数长度(\(n \leq 10 ^ 5\))的字符串, 只包含大小写字母. 有q(\(q \leq 10 ^ 5\))次询问, 每次指定两个位置, 要求通过交换字符, 使这两个类型的字符在串同一边并且对于其他类型的字符, 不能跨过串的中线(也就是说必须在一边, 但是可以不跟指定的字符一边), 求方案数模\(1e9 + 7\)Solution这个题目...

2019-02-12 11:46:00 94

转载 [CF1111E] Tree

Portal题意很好懂, 就不讲了.主要问题在Dp方程式, 设\(Dp[i][j]\)表示询问点中前\(i\)个点分成\(j\)个联通块的时候的方案数, 那么有:\[Dp[i][j] = Dp[i - 1][j - 1] + Dp[i - 1][j] * (j - h[i])\]\(h[i]\)表示一个点到根的链上有多少个询问点.你发现询问点数很少. 并且是\(\sum k...

2019-02-06 22:18:00 70

转载 [CF915F] Imbalance Value of a Tree

题目链接一开始想到点分治, 其实不是很好搞.因为分治每次是计算的过某个点的答案, 所以我们也可以按一定的顺序计算贡献.因为题目是按照最大值最小值计算贡献的, 所以按照从小到大的方式计算贡献.先求最大值, 然后一起减去最小值贡献就可以了.所以我们从小到大排序后, 对于每个相邻联通块之间的链, 这个点就一定为最大值.所以直接算贡献就可以了.考虑这一道题目的套路, 同样是统计树...

2019-01-27 00:57:00 130

转载 [CF768G] The Winds of Winter

显然对于删去一个点之后形成的森林, 就是把最大的那棵树砍下来, 接到最小的树上.设删去当前点删去后形成的所有树中最大的那一棵大小为\(Max\) , 最小的为Min, 次小值为Sec设从最大树砍掉的节点为u, 答案就是\(max\{Max - Size_u, Min + size_u, Sec\}\)它关于\(Size_u\)变化的函数显然是单峰的, 所以可以二分答案\(Ans\)...

2019-01-27 00:56:00 73

转载 [BZOJ4318] OSU!

题目链接首先根据题设直接设期望: $ E(G(x))$ 表示到x的期望得分.因为:\[E(x + \Delta) = E(x) + E(\Delta)\]并且期望的本质实际上是积分, 所以我们只要计算每一个点对应的增量\(\Delta\)就可以计算当前的期望值.发现\(E(x ^ 3)\) 的增量为\(3E(x ^ 2) + 3E(x) + 1\)\(E(x ^ 2)\)...

2019-01-27 00:53:00 71

转载 [BZOJ4241] 历史研究

题目链接考虑分块: 记\(Ans[i][j]\) 表示第i到第j块的答案, \(cnt[i][j]\)表示第\(j\)种颜色的块前缀和.那么就可以直接处理了, \(Ans[i][j]\)可以通过扫描一整个块来处理, 查询的时候直接先询问大块答案, 然后小块扫描.因为大块里面的答案它不会受到小块的影响, 而大块里面的答案小块探测不到, 所以这样做反而是可以的.考虑分块的一般思想:...

2019-01-26 20:51:00 69

转载 [LuoGu]P2664 树上游戏

Portal这题真的好.看到树上路径, 脑子里就要点分治这一题对于每个点都要计算一遍, 如果暴算实在不好算, 这样我们就可以考虑算贡献.直接计算每种颜色的贡献.因为一条过重心的路径中, 可能两边都会有相同颜色, 那么我们就只考虑当前点到分治中心的链上.然后把多算的这条链上的东西删除就可以了.Copy From Here那么我们就可以这样做了:1.对树进行第一遍dfs,...

2019-01-09 22:11:00 96

转载 [NOI2014] 魔法森林

Portal对于这一题, 我们考虑直接求出路径是非常麻烦的.那么采用一个枚举答案的办法, 因为取值范围有限, 我们直接枚举边即可.我们枚举\(A\)的取值, 直接维护另一边的\(B\).考虑钦定的这条边一定要被选. 那么小于这条边的权值的边只要保证\(1\), \(N\)两者联通就可以了.于是我们对另一边维护一个最小生成树.这个可以把边单独建成LCT中的点, 然后点的权为0,...

2019-01-09 21:33:00 59

转载 [CQOI2015] 选数

Portal重庆的题目质量还是不错的.这个刚好为\(k\)就是一个暗示, 暗示我们枚举超集/子集进行容斥.容斥做法:咕咕咕以下是反演做法.设\(F(n)\)表示n == k的时候题目所求.设\(G(n)\)表示k | n 的时候题目所求.那么\([l, r]\)范围内有\(\frac{r}{k} - \frac{l - 1}{k}\)个k的倍数那么G(n) = \...

2019-01-09 21:13:00 65

转载 [NOI2015] 寿司晚宴

Portal这题目真是神题.因为a, b互质,那就代表a,b的质因数分解的素数集合交集是空集.那么只要两者的集合的质因数分解的素数集是空集合.考虑每个数最多只有1个超过\(\sqrt{n}\)的因子, 那么这样算\(\sqrt{n}\)以内最多有8个质数.然后我们直接状压Dp. 把大于等于22的大素因子单独提出来, 按照这个进行处理.设dp[i][j][k]表示计算到第i个数...

2019-01-09 20:28:00 84

转载 [ZJOI2016] 大森林

Portal这题的确很神奇.考虑每棵树是不会互相影响的, 所以我们可以将询问离线来做.因为每次生长出来的节点编号都是一样且独一无二的,那么这些节点一定可以重复利用. 我们就只用建立一棵树来维护, 然后通过不断变化形态来解决问题.因为我们询问的是路径长度, 所以询问点的祖先长了许多不存在的节点也无所谓.因为在没有1操作的时间内, 所有的节点都是长到一起的. 那么我们每次转嫁节点比...

2019-01-04 22:31:00 62

转载 [SDOI2017] 数字表格

Portal还是一样, 我们应用枚举GCD的套路:\[Ans = \prod_{i}\prod_{j} f(gcd(i, j)) \\= \prod_{d} f(d)^ {\sum_{i}\sum_{j} [(i, j) = d]}\\= \prod_{d} f(d)^ {\sum_{s} \mu(s)\frac{n}{ds}\frac{m}{ds}} \\\]之后我们继续...

2018-12-31 11:25:00 62

转载 [SDOI2015] 约数个数和

Portal考虑这样一个式子:\[d(ij) = \sum_{x | i}\sum_{y | j} [x \bot y]\]怎么证明? 一开始我们一定会想到\[d(ij) = \sum_{x | i} \sum_{y | j} 1 \] 但这样会计算重复. 于是我们考虑:\[d(ij) = \sum_{x | i}\sum_{\frac{j}{y} | j}1\]这样...

2018-12-29 20:25:00 88

转载 [BZOJ4407] 于神之怒加强版

Portal我们先来化式子:\[Ans = \sum_{i = 1}^{n} \sum_{j = 1}^{m} (i, j) ^{k} \pmod {1e9 + 7}\\\]首先是套路枚举GCD + 反演\[Ans = \sum_{i}\sum_{j}\sum_{l = 1} ^ {min(n, m)} l ^ {k} ~\cdot~ [(i, j) == l] \\=...

2018-12-29 17:33:00 55

转载 组合数学常用公式,经验式总结(持续更新)

基本公式:\[{n \choose k} = {n \choose n - k} \\Pascal三角形:{n \choose k} = {n - 1 \choose k - 1} + {n - 1 \choose k}\\恒等式:\sum {n \choose i} = 2 ^ n\\二项式定理: (x + y)^n = \sum_{i = 0}^{n} {n \choos...

2018-12-24 19:32:00 245

转载 [SRM625 Div1 Hard] Seatfriends

题目链接:Portal VjudgeSolution一开始拿到这一题Sb了,把空放到dp中一起考虑了,这样计数就变得很麻烦。其实我们可以把空位拿出来,假设它是存在的,最后再放回去。那么就可以钦定某个人放到第一个,因为这是环排列,所以最后乘以n就可以了。设\(Dp[i][j]\)表示来了\(i\)个人,分成\(j\)个联通块的方案数。那么新来的人有三种选择,加入一个联通块,独立...

2018-12-22 17:15:00 156

转载 [SRM613~] TaroCheckers

一定要注意Topcoder的提交机制Links: 原题地址 VjudgeSolution这道题思维比较巧妙。 一看就基本知道是一个Dp题。首先转换一下,用列而不是行来设第一维的状态,因为每列只有放或不放两种状态。行的受力情况很复杂,这里啊那么对于每一列,到了要分配Left的时候我们再把前面的列分配过来。到Right的时候,我们就反其道而行之,把Right贮存下来,然后之后每一...

2018-12-22 09:14:00 174

转载 [玲珑杯1138] 震惊,99%的中国人都会算错的问题

这题果然标题党题目链接:PortalSolution这一题一看m很小,表示可以容斥。根据容斥原理的基本式子有:\[|\overline{\bigcup_{i = 1}^{n} A_i}| =\sum f(1)|A_i| + \sum f(2)|A_i \cup A_j| + \dots + \sum f(n)|\bigcup_{i = 1}^{n}A_i|\]其中f(n)...

2018-12-20 20:29:00 75

转载 [HNOI2008]玩具装箱TOY

Portal这一题是斜率优化的入门题,应该写一些文字来总结.斜率优化是一种针对dp方程式中有一个或数个单项式同时含有I,J相关的内容的一种优化。首先列出Dp方程式:\[ Dp[i] = min\{Dp[j] + (sum[i] - sum[j] + i - j - l - 1)^2\}\]将I,J,为主元进行分类。我们先忽略Min:严格意义来说,这里的常数项为了保持式子的优美...

2018-12-18 21:52:00 105

转载 [CF765F] Souvenirs

Portal其实这题很套路。像HNOI2017影魔的模型,大概可以概括为:给定你一个序列,在不修改的前提下,求一个区间满足某种条件的二元组的个数/最值/和,条件一般和最值有关, 这就方便我们进行维护。解决此类问题的一般思路是,首先离线,然后在固定某个端点的情况下处理另一个端点。处理容易发现,另一个端点的值往往是满足某些类单调的性质。这就可以严格限制另一个端点扫到的元素个数,从而保证...

2018-12-16 22:26:00 88

转载 [BJOI2014]大融合

Portal可以简单发现, 经过一条边的路径条数就是这条边左边的点数乘以右边的点数。那么就只要动态维护一棵树两边的点的size就可以了。那么就用\(整体的点数-子树的点数\)就是另外一部分的点数。在LCT上,儿子有左儿子,右儿子和虚儿子之分。那么我们在维护的时候就分类讨论一下就可以了。注意到只有Link和access操作会改变虚儿子。 那么我们只要在这个时候维护虚儿子就可以了...

2018-12-14 19:09:00 87

转载 [SDOI2008] 洞穴勘测

Portal要求维护一个可以支持断开树边的并查集。\[ n <= 10000, m <= 200009 \]LCT的最普通的应用。 直接上模板就好了。#include<bits/stdc++.h>using namespace std;#define rep(i, a, b) for(int i = (a), i##_end_ = (b); i &...

2018-12-14 18:54:00 76

转载 [Luogu3768]简单的数学题

Portal\[求 \sum_{i = 1}^{n}\sum_{j = 1}^{n}(i,j)ij\]好像直接利用\(\varphi\)很好做诶:\[\sum_{i = 1}^{n}\sum_{j = 1}^{n}(i,j)ij\\= \sum_{i = 1}^{n} i\sum_{j = 1}^{n}j \sum_{d | (i,j)} \varphi(d)\\= \...

2018-12-12 21:32:00 192

转载 [BZOJ4916]神犇和蒟蒻

Portal求:\[\sum_{i = 1}^{n} \mu(i ^ 2) ~~~ \sum_{i = 1}^{n} \varphi(i ^ 2) \\n \leq 1e9\]第一问:我有个写法可惜这里空间太小写不下:... printf("1\n");...下面我们来考虑第二问:对于一个素因子\(p\),我们有:\[\varphi(p^k) = (p ...

2018-12-12 21:02:00 51

转载 杜教筛小结

写在前面杜教筛是一种快速求积性函数前缀和的算法。和洲阁筛一起写在『积性函数求和的几种办法』这一篇论文中,有兴趣可以阅读一下。前置知识积性函数数论函数: 指定义域为正整数、陪域为复数的函数积性函数:对于任意互质的整数a和b有性质\(f(ab)=f(a)f(b)\)的数论函数。完全积性函数:对于任意整数a和b有性质\(f(ab)=f(a)f(b)\)的数论函数。...

2018-12-12 20:26:00 42

转载 [BJOI2015] 树的同构

DescriptionPortalSolution这题主要就是判断两个树是不是同构。我们采用Hash来做。要注意在Hash一个节点的时候要把他的儿子的数量和子树大小hash进去。因为这是判断两颗树是否同构的重要标准。此外,我们对于任意的儿子之间最好要有区分。这里采用排序后加权。Code#include<bits/stdc++.h>using namespa...

2018-12-06 20:01:00 126

转载 [HNOI2018] 排列

写在前面其实这一题目算是一道好题,但是直接蒯了他人的代码,其实这一行为并不可取。这一题目算是一道很经典的题目,跟这道题,具有相同类似的模型。但是我太菜了做不出, 仅仅是路过pick的。 所以可以参考对比进行理解。Description参见这里:传送门Solution && Code参见这里:传送门Inspiration这题提供了一个经典模型:有n个二元组...

2018-12-04 18:29:00 81

转载 [HNOI2017] 影魔

DescriptionPortal一句话题意:给定n个数的排列,m次询问,每次询问询问一个区间内所有子区间的贡献。每个区间如果两个端点分别是最大值和次大值,我们就算P1的贡献。如果两个端点一个是最大值,一个不是次大值,我们就算P2的贡献。$ n, m \leq 200009 $Solution这题其实是除了礼物之外的HNOI的最容易的题目因为要处理两个端点的值, 所以我们...

2018-12-03 19:42:00 55

转载 [HNOI2017] 大佬

DescriptionTransmission GateSolution题目面长度堪比《离骚》,不过也是道巧妙题这一题操作很多,混在一起不好考虑,那么将他们分类进行处理。总的来说,操作分为回复和攻击, 其中攻击又有两种类型,每种类型又互不干扰,所以可以拆开处理。 可以发现大佬攻击和自己回复的值是一定的,而大佬不会回复,所以两个操作互不影响,所以分开求解。我们只要求出一个时间长度...

2018-12-02 11:44:00 108

转载 [CF1076G] Array Game

DescriptionTransmission GateSolution考虑Dp,设Dp[i] 表示当我们从前面跳跃到i时,他是必胜还是必败。那么\(Dp[i] = Min(Dp[j], !(Dp[i + 1] = 1~ \&\&~(a[i] - 1)~mod~2 =0)), j \in [i + 1, i + m]\)表示如果能跳的地方是必败态, 那么我们就跳...

2018-11-24 09:57:00 148

转载 [CF1076F] Summer Practice Report

DescriptionTransmission GateSolution这一题可以考虑Dp,设\(Dp[i][j]\) 为在第i段中,以j颜色为结尾的最后一小段长度的最小值。那么可以先考虑以表为结尾的情况:表上一个线段的结尾,就把表看作分隔符,那么分隔符的数量下界是$lowerBound = \lceil \frac{(Dp[i - 1][j] + a[i])}{k} \rc...

2018-11-22 20:22:00 187

转载 BZOJ2957 楼房重建

Description  小A的楼房外有一大片施工工地,工地上有N栋待建的楼房。每天,这片工地上的房子拆了又建、建了又拆。他经常无聊地看着窗外发呆,数自己能够看到多少栋房子。  为了简化问题,我们考虑这些事件发生在一个二维平面上。小A在平面上(0,0)点的位置,第i栋楼房可以用一条连接(i,0)和(i,Hi)的线段表示,其中Hi为第i栋楼房的高度。如果这栋楼房上任何一个高度大于0的点...

2018-11-05 23:48:00 82

转载 常犯错误总结

Mod 打错 (cnt = 2)不要使用串相同而且大小写不同的变量 (cnt = 56)拉链时要注意重儿子的赋值,跳链时一定要先跳深度大的,查询时深度小的放在前面。(cnt = 3)倍增的时候一定要从大步转换到小步. (cnt = 2)在树上问题转换成序列上的问题时,一定要想清哪里用(dfn/euler/括号/prufer)序列, 哪里用给定的编号 (cnt = 4)建图的时...

2018-10-25 16:32:00 59

空空如也

空空如也

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

TA关注的人

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