CF1515H口胡】的更多相关文章

居然一下就做出来了...不知道是不是对的/fad 考虑操作的本质,首先将所有元素插入线段树中. 来依次考虑每一种操作: 区间与 注意到这个操作类似将某些节点的右儿子合并到左儿子上,而一个节点最多被合并一次,所以可以暴力合并,如果没有兄弟那就打上标记. 区间或 和前者类似. 区间异或 这个操作是交换左右儿子,所以直接打上标记,前面没有兄弟的时候也可以打上相同的标记. 询问 这不是用脚维护一下就好了吗. 但是注意到这只对全局操作管用,所以考虑通过某种方式使得区间也管用. 首先将整个区间拆分成线段树上…
据说做TC题有助于提高知识水平? :) 传送门:https://284914869.github.io/AEoj/index.html 转载请注明链接:http://www.cnblogs.com/Blog-of-Eden/p/8407296.html Topcoder SRM 562 Div 1 - Problem 1000 InducedSubgraphs 当K*2<=N的时候,显而易见的是编号为i(K<=i<=N-K+1)的点一定会形成一条链. 枚举合法的这样的链,剩下的暴力dp吧…
前言(不想听的可以跳到下面) OK.蒟蒻又来口胡了. 自从ZJOI2019上Day的数论课上的多项式听到懵逼了,所以我就下定决心要学好多项式.感觉自己以前学的多项式都是假的. 但是一直在咕咕,现在是中午,一个早上的努力就完成了FFT的学习,其实并没有想象中的那么难. 文笔较渣,想到什么就写什么,可能逻辑性比较差,来回看个几遍差不多就懂了. 介绍 先简单介绍一下FFT(Fast Fourier Transformation) ,中文全名叫做快速傅里叶变换. 应用在加速多项式的乘法,或者是高精度加速…
最近实在是懒的不想打代码...好像口胡也算一种训练,那就口胡把. BZOJ 2243 染色(树链剖分) 首先树链剖分,然后记录下每个区间的左右端点颜色和当前区间的颜色段.再对每个节点维护一个tag标记.剩下的就是很normal的线段树区间合并和标记下传了. BZOJ 2245 工作安排(费用流) 很normal的拆边费用流.建立虚拟源点s和汇点t.s向产品连边,产品向可以生产它的工人连边,工人向t连边.这里的分段函数是个非递减的分段函数,由于最小费用流的特殊性.这里的分段函数可以用流和费用分割开…
Atcoder/Topcoder 理论 AC Atcoder的❌游戏示范 兴致勃勃地打开一场 AGC 看 A 题,先 WA 一发,然后花了一年时间 Fix. 看 B 题,啥玩意?这能求? 睡觉觉. emmmmm 虽然这些副本里的怪一点也不友善,但是却能给直感[1]带来极大的提升. [1]:「直感」是在战斗中一瞬间判明「对自身最适合行动」的能力 Atcoder Grand Contest 2 B. Box and Ball 口胡 考虑 \(k\) 次操作后可能出现红球的集合,记录每个集合球的个数.…
NOIP以前可能会持续更新 写在前面 NOIP好像马上就要到了,感觉在校内训练里面经常被虐有一种要滚粗的感觉(雾.不管是普及组还是提高组,我都参加了好几年了,结果一个省一都没有,今年如果还没有的话感觉就真的要滚大粗退役回去念书了QAQ.于是有了压力就来刷(水水水)题.感觉校内OJ的题库还挺多的就开始做校内OJ的题.(本校的其他神犇都在其他各种OJ上屠丧题我感觉好虚啊!)于是把这几年NOIP的原题拿出来做了下. (我蛮立个flag:如果NOIP过了就买BZOJ权限号...) 历年NOIP提高组一句…
关于有向图走"无限次"后求概率/期望的口胡/[题解]HNCPC2019H 有向图 全是口胡 假了不管 讨论的都是图\(G=(V,E),|V|=n,|E|=m\)上的情况 "走无限次"这个概念很抽象,严谨的证明以及描述和概率的收敛性有关,由于我也不会在此就不讨论这些,但是根据一些概率的知识,可以发现,其实走无限次可以这样描述: 由于使用概率不好描述在无限次的情况时,每个点和点之间的关系,所以用期望.到时候根据期望的定义式反过来求概率.可能的问题是,"不是走无…
目录 题目 口胡题解 题目 有许多的青蛙要过河,可惜的是,青蛙根本跳不过河,他们最远只能跳 \(L\) 单位长度,而河宽 \(W\) 单位长度. 在河面上有一些石头,距离 \(i\) 远的地方有 \(a_i\) 个石头,每个石头只能使用一次,求最大能有多少青蛙过河. 输入的第一行为两个整数 \(W,L(1<l<w<10^5)\) 第二行有 \(W-1\) 个整数 \(a_1,a_2.......a_{w-1}(0<a_i<10^4)\) 输出为一个整数,即能过河的最大青蛙数…
\(PKUSC\ 2022\)口胡题解 为了更好的在考试中拿分,我准备学习基础日麻知识(为什么每年都考麻将 啊啊啊) 首先\(STO\)吉老师\(ORZ,\)真的学到了好多 观察标签发现,这套题覆盖知识点广,难度适中,是一套不可多得的题 \(DAY1\) \(T1\) 考虑过程必然是,一个值小的在参加若干轮之后超过大的,然后目前值小的参加若干轮依次交替 首先考虑单个变量 我们枚举\(i\)向后跳的第一步,假设跳到\(i-j,\)然后后面的过程是 \(i->j\)表示进行若干轮之后,中间过程不超过…
还以为是什么非常高大上的东西花了1h不到就学好了 线性基 线性基可以在\(O(nlogx)\)的时间内计算出\(n\)个数的最大异或和(不需要相邻). 上述中\(x\)表示的最大的数. 如何实现 定义\(p[i]\)表示在二进制下从最高位开始第一个出现\(1\)的数. 当前我们将一个数插入线性基中. 如果\(x\)的最高位的\(1\)还没有被插入过,那么就在这一位上插入\(x\). 如果当前这一位被插入过,那么就异或上这一位上的数. 查询操作:从最高位上开始贪心. 如果异或这一位上的数可以让答案…
前言 蒟蒻有参加了ACM比赛,这一次有适合HY和慕容宝宝大佬一起比的,他们好巨啊,把我带飞了. 又是窝掌机,QAQ,他们仗着自己巨,就欺负窝... 我又打了\(4\)个小时的代码,而且那个键盘太恶心了.忍不住吐槽一下.. 早上 首先是热身赛. 忍不住继续吐槽. 早上的\(c\)题就是一个毒瘤.是一道提交答案题. 给你\(12\)个动漫角色,然后让你写出他们的名字.(反正题目就差不多这样子...) 我找出来了\(9\)个,然后就断网了...淦... A-Thanks,Tu Simple 他们两个人…
原文链接https://www.cnblogs.com/zhouzhendong/p/51Nod-One-Sentence.html 51Nod1404 先列出式子,然后搞成一个组合数.然后 lucas 定理一下,转化成比模数小的组合数.模数很大,打表预处理阶乘即可. 51Nod1026 枚举底数,然后按照指数值域分类,最后容斥一下就好了. 51Nod1033 状压dp一下,矩阵快速幂优化转移. 51Nod1261 考虑每一个上升数都是大于 $9$ 个形如 $11\cdots 11$ 的数之和,…
三分 给定平面内 \(n <= 2000\) 个节点, 求平面内一点使得到所有点的欧几里得距离和最小 确定 \(y\) 轴时 \(x\) 轴满足单峰函数 \(x\) 轴同理 三分套三分即可 深度优先搜索 从起始状态少的一侧开始搜索更优 例题 给你一副扑克中的 \(n\) 张牌, 出的下一张牌需要为前面出牌点数之和的约数, 求一种合法的方案 此题正向搜索代码如下: void dfs(int depth, int sum){ if(depth == n){ output(); return ; }…
题面 一开始看这题看了好久--觉得这题不可做. 结果是看错题了,我居然看着一段长长的C开头的单词,然后就觉得这是卡特兰数--不知道我在想些什么-- 观察到对于 i = 1~9 : f[i] = f[i - 1] * 10 + i; i = 10 ~ 99 : f[i] = f[i - 1] * 100 + i; . . . 总的来说就是: f[i] = f[i - 1] * len[i] + i; 分段做矩阵乘法即可. --…
[HNOI2015]菜肴制作 时间限制: 1 Sec  内存限制: 512 MB 题目描述 知名美食家小 A被邀请至ATM 大酒店,为其品评菜肴. ATM 酒店为小 A 准备了 N 道菜肴,酒店按照为菜肴预估的质量从高到低给予 1到N的顺序编号,预估质量最高的菜肴编号为1.由于菜肴之间口味搭配的问题, 某些菜肴必须在另一些菜肴之前制作,具体的,一共有 M 条形如“i 号菜肴‘必须’ 先于 j 号菜肴制作”的限制,我们将这样的限制简写为<i,j>.现在,酒店希望能求 出一个最优的菜肴的制作顺序,…
T1五种贡献恶心的要死.$1.grand$$2.father$$3.brother$$4.son$$5.grandson$我们选择维护三个量.1.儿子和,$sx$2.孙子和,$gsx$3.自己的值,$a$那么每次修改只需要修改自己的值,父亲的儿子和,爷爷的孙子和即可,注意儿子和孙子分开考虑.那么查询的时候.设当前点为$x$,父亲为$f$,爷爷为$g$.那么答案就是 $$ans=a[x]\ xor\ sx[x]\ xor\ gsx[x]\ xor\ sx[fa]\ xor\ a[x]\ xor\…
我们先证正确性,再证复杂度 以下记$\left \langle i,j \right \rangle$为考虑$\left [ i,j \right ]$的点时的最优决策 $\left \langle i,j \right \rangle$由$\left \langle i,j-1 \right \rangle$转移的 先放棵树 那个橙色的就是$\left \langle i,j-1 \right \rangle$ 此时根是其他任意一个点都不会比现在更优 现在我们要在这颗树上插入点$j$, 显然$…
Description 给出一棵n个节点的树,每个点有一个1~n的颜色 有m次操作,每次操作修改一个点的颜色 需要在每次操作后回答树上\(n^2\)条路径每条路径经过的颜色种类数和. \(n,m<=400000\) Solution 挺有意思的一个套路 首先我们单独计算每种颜色的贡献,对于每种颜色的点集分开考虑,我们需要计算至少经过了其中一个点的路径条数. 正难则反,考虑计算一个点都没经过的路径条数,那就是将点集删去后剩余连通块的大小平方和. 考虑这样一个模型 对于原本每种颜色有一个黑白两色的树…
真是一道"简单"的数学题呢~ 反演题, 化式子. \[ ans=\sum_{i=1}^n\sum_{j=1}^nijgcd(i,j) \\ =\sum_{i=1}^n\sum_{j=1}^n\sum_{d=1}^nij[gcd(i,j)=d]\\ =\sum_{d=1}^nd\sum_{i=1}^n\sum_{i=1}^nij[gcd(i,j)=1]\\ =\sum_{d=1}^nd^3\sum_{i=1}^{\left \lfloor \frac nd \right \rfloor}…
为什么我从ACAM做到了数位DP啊 考虑枚举前缀顶着最高位和后缀没有顶着的最高位. 考虑计算一个数对答案的贡献.统计 \(t\) 的出现次数记录到 \(c[t]\) 中. 贡献就是 \(\sum_{i=0}^{9}((\sum_{x=0}^{\sum_{j=i}^{9}c[j]-1}i\times10^{x})-(\sum_{x=0}^{\sum_{j=i+1}^{9}c[j]-1}i\times 10^{x}))\). \[(\sum_{i=0}^{9}i\times \sum_{x=0}^{…
当你看到一个东西的时候,GF 有可能比 DP 更方便.处理贡献也有可能比 DP 更方便. 这个题意明显是让我们计算 \(S(r)-S(l-1)\) 之类的东西( 所以直接考虑前缀的答案就好了( 考虑将一个数分为两个部分,顶着最高位的前缀和没顶着最高位的后缀. 我们枚举这个前缀.后缀的个数是很容易计算的,前缀对答案的贡献也很容易计算. 后缀对答案的贡献不是那么好计算.我们直接考虑每个元素对答案的贡献. 设所有长度为 \(n\) 的数的前缀和之和为 \(g[n]\),所有长度为 \(n\) 的数的价…
<线 性 做 法> 首先我们对所有串建立 ACAM,不难发现对于一个 \(i\),可能的 \(j\) 一定是 \(i\) 所有后缀节点在 fail 树上第一个被打标记的祖先. 但是这些祖先的内部可能在 fail 树上仍然存在祖孙关系.我们需要去掉存在祖孙关系的父亲节点. 我们将节点按照括号序的左端点从小到大排序.如果目前答案序列的最后一个被自身包含就将其踢出答案序列. 可以发现是对的.因为儿子一定在父亲之后出现.并且发现区间互不包含,不在答案序列的最后一个就不可能被我删掉. 瓶颈变成了对若干个…
万 恶 之 源 十 二 重 计 数 法 先鸽子了 球有序,盒子有序 答案明显为 \(m^n\). 球有序,盒子有序,每个盒子最多放一个 答案明显为 \(\binom{m}{n}n!\). 球有序,盒子有序,每个盒子至少放一个 设问题 \(1\) 的方案数为 \(g(n,m)\),那么明显有 \(f(n,m)=g(n,m)-f(n,m-1)=\sum_{i=0}^n(-1)^i(m-i)^n\).…
套路题. 对于这一类与 \(\max\) 有关的题,优先考虑笛卡尔树. 建出笛卡尔树,考虑处理以某个点 \(u\) 举办会议时,参加会议的成本. 这里考虑询问区间为 \([1,n]\). 明显 \(u\) 的贡献是 \(\sum_{i=1}^n\max([i,u])\).(\([x,y]\) 代表序列上 \(x\) 到 \(y\) 的所有数组成的集合) 考虑枚举这个 \(\max\),在笛卡尔树上的 \(\max\) 对应 LCA. 假设节点 \(u\) 到根节点所经过的节点为 \(v_1\si…
操作好像比较神秘. 发现 \(k\) 很小,考虑和 \(k\) 有关的 DP,考虑不出来. 费用提前计算,对 \(w_i\) 做后缀和,那么序列的权值就是 \(\sum_{i=1}^nyw_i\). 考虑 DP,明显有 \(dp[n][x]=\max_{i=-k}^kdp[n-1][x+i]+i\times w_n\). 注意到这个形式有点像 \((\max,+)\) 卷积,很容易发现右边的东西是一个一次函数. 一次函数一定是一个凸包,所以 DP 数组一定也是一个凸包. 我们需要计算的就是两个凸…
大家好,我是后缀自动机套线段树魔怔人,我非常喜欢使用后缀自动机套线段树草字符串题. 看到一个区间加上一个相同的数后等于另外一个区间,很容易想到先对序列做差分,统计长度为1的答案后再来统计这些. 直接统计并不是很好统计,考虑统计两个endpos在parent tree上被合并的时候对答案的贡献,容易发现是 \(\min(x-y+1,len[u])\). 吼哇,一个很明显的式子摆在面前!啊哈哈哈哈哈哈,线段树合并来咯! 统计答案可以启发式合并两个endpos序列,当然也可以在线段树合并的过程中计算答…
直觉告诉我一般情况下,询问古怪的题都是分块,但是这一类题不太一样. 思考一个奇怪的暴力,每次询问的时候询问 \(f(1,k),f(2,k+1),f(3,k+2),...f(n-k+1,n)\),然后加起来一定是答案. 差分,思考 \(f(l+1,r+1)-f(l,r)\) 是多少.容易知道其对答案的贡献为 \((n-r)\). 考虑 \(l\) 和 \(r+1\) 两个位置. 接下来设 \(pre[i]\) 为上一个颜色与自身相同的最靠右的位置,\(nxt[i]\) 类似. 可以发现 \(f(l…
UOJ191,你失败的原因只有一个:你没有强制在线. 首先这个序列末位加加减减很烦,于是换成操作树,这样就变成查询链的信息了. 注意到一个向量 \((x_1,y_1)\) 比 \((x_2,y_2)\) 优秀的条件是 \(x_1*B-y_1*A>x_2*B-y_2*A\),也就是 \((x_1-x_2)*B>(y_1-y_2)*A\),\(\frac B A<\frac {y_1-y_2}{x_1-x_2}\). 于是树剖. 容易发现询问是由链上若干个前缀与一个区间组成的.于是我们似乎只…
建议改为:如何使用FWT直接把反演题草过去 需要清楚 FWT 的本质是什么. 首先我们有一个明显的 DP: 设 \(dp[u][x][S]\) 代表 \(u\) 在图中为 \(x\),子树包含集合 \(S\) 的方案数. 那么我们只需要枚举可行的 \((v,y)\),然后做子集卷积就行. 复杂度 \(O(n^4 \times 2^n)\),无法通过. 考虑硬生生把子集卷积的 \(n^2 \times 2^n\) 优化成 \(n \times 2^n\). 现在我们将 \(dp[u][x]\) 看…
自己在物理课上编了一道题,大概就是这题把删除区间的边改为保留区间的边...都不觉得判断短路和判断二分图有点儿像吗 题意:给定一张无向图,每次暂时删除一个区间内的边,问删除后这个区间是否为二分图. 首先倍长区间,删除区间变为保留区间. 考虑对每条边 \(i\) 处理一个序列上的一个位置 \(e_i\),表示对原图加入 \([e_i,i]\) 的边后整张图不是二分图,取最大的 \(e_i\). 很容易能够发现有 \(e_i \leq e_{i+1}\),也就是 \(e_i\) 存在单调性. 左端点单…