自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

fyc的博客

AFO_after_noip

  • 博客(415)
  • 收藏
  • 关注

原创 codeforces814E. An unavoidable detour for home

题意:设disxdis_xdisx​为x到1的唯一最短路(必须唯一),则满足每个点度数=dxd_xdx​且disx<=disx+1dis_x<=dis_{x+1}disx​<=disx+1​的图有多少种n<=50,2<=dx<=3n<=50,2<=d_x<=3n<=50,...

2019-02-28 21:49:22 278

原创 codeforces1129D. Isolation

题意:将一个序列分段,每段至多有kkk个数恰好出现一次,问方案数题解:n2n^2n2dp很容易,当(l,r)(l,r)(l,r)满足条件时f[l−1]−>f[r]f[l-1]->f[r]f[l−1]−>f[r]考虑怎么快速求出所有满足条件的fff的和记录一下每种颜色最后出现位置和次后出现位置,可以将题意转化为区间加,为所有值<=k&...

2019-02-26 10:32:27 348 2

原创 bzoj 5451: 字符串

题意:给定正整数m以及n个01串s1~sn,你需要求出长度为2m的反对称的包含这n个01串作为子串的01串的个数。对998244353取模。一个01串s是反对称的当且仅当它对于1<=i<=∣s∣1<=i<=|s|1<=i<=∣s∣都满足s[i]≠s[∣s∣−i+1]s[i]≠s[|s|-i+1]s[i]̸​=s[∣s∣−i+1...

2019-02-24 19:57:39 581

原创 生成函数常用公式

1(1−ax)m=∑nCn+m−1m−1anxn\frac{1}{(1-ax)^m}=\sum_nC_{n+m-1}^{m-1}a^nx^n(1−ax)m1​=n∑​Cn+m−1m−1​anxnex=∑i=0xii!e^x=\sum_{i=0}\frac{x^i}{i!}ex=i=0∑​i!xi​ex+e−x2=∑i=0x2i(2i)!\frac{e^x+e^{-x}}{2}=\sum_{i=...

2019-02-22 10:35:44 1798

原创 loj6268. 分拆数

题意:求111~nnn的分拆数。题解:考虑其生成函数为F(x)=∑if(i)xiF(x)=\sum_if(i)x^iF(x)=∑i​f(i)xi那么F(x)=∏i=111−xiF(x)=\prod_{i=1}\frac1{1-x^i}F(x)=∏i=1​1−xi1​两边取对数得ln⁡F(x)=∑i=1ln⁡11−xi\ln F(x)=\sum_{i=1}\ln\frac1{1-x^i}...

2019-02-22 10:11:55 410

原创 loj2409. 「THUPC 2017」小 L 的计算题 / Sum

题意:fk=∑i=1naikf_k=\sum_{i=1}^n a_i^kfk​=i=1∑n​aik​求出f1f_1f1​~fnf_nfn​题解:考虑构造fff的生成函数FFF设A(x)=∑jaijxjA(x)=\sum_j a_i^jx^jA(x)=∑j​aij​xj则F(x)=∑inA(i)F(x)=\sum_i^n A(i)F(x)=∑in​A(i)FFF的系数即是∑i=1nai...

2019-02-22 09:40:05 719

原创 codeforces891ELust

题意:一个序列a,做k次下列操作:1、随机一个下标xxx,答案加上Πi=1,i!=xnai\Pi_{i=1,i!=x}^na_iΠi=1,i!=xn​ai​2、将axa_xax​减一。求答案的期望。题解:感受一下,可以发现答案是这个Πai−Π(ai−bi)\Pi a_i-\Pi(a_i-b_i)Πai​−Π(ai​−bi​)其中bib_ibi​表示iii被减了几次。那么设Fi(x)...

2019-02-21 20:01:00 212

原创 [UOJ]#36. 【清华集训2014】玛里苟斯 线性基+分类讨论

题意:魔法之龙玛里苟斯最近在为加基森拍卖师的削弱而感到伤心,于是他想了一道数学题。SSS 是一个可重集合,S=a1,a2,…,anS={a1,a2,…,an}S=a1,a2,…,an。等概率随机取 S 的一个子集 A=ai1,…,aimA={ai1,…,aim}A=ai1,…,aim。计算出 AAA 中所有元素异或 xxx, 求 xkx^kxk 的期望。题解:tybcode:#in...

2019-02-15 15:31:37 239

原创 3450: Tyvj1952 Easy

题意:某一天WJMZBMR在打osu~~~但是他太弱逼了,有些地方完全靠运气:(我们来简化一下这个游戏的规则有nnn次点击要做,成功了就是ooo,失败了就是xxx,分数是按comb计算的,连续aaa个comb就有a∗aa*aa∗a分,comb就是极大的连续ooo。比如ooxxxxooooxxxooxxxxooooxxxooxxxxooooxxx,分数就是2∗2+4∗4=4+16=202*2...

2019-01-31 15:08:55 388

原创 3133: [Baltic2013]ballmachine

题解:第一步,读懂题,可以看下discuss那么对每个球求出优先级,开个堆记录当前有什么空位再开个线段树记录每个点最上面的点的深度,倍增上去修改即可code:#include<queue>#include<vector>#include<cstdio>#include<cstdlib>#include<cstring>...

2019-01-30 09:36:41 242

原创 3090: Coci2009 [podjela]

题意:有 N 个农民, 他们住在 N 个不同的村子里. 这 N 个村子形成一棵树.每个农民初始时获得 X 的钱.每一次操作, 一个农民可以从它自己的钱中, 取出任意数量的钱, 交给某个相邻村子的农民.对于每个农民给定一个值 v_i, 求(1) 最少需要多少次操作, 使得每个农民最终拿到的钱 >= 给定的值.题解:想到树形背包dp就很好做了。显然每对人只会交易一次,所以总数不超...

2019-01-30 09:30:24 315

原创 4665: 小w的喜糖

题意:求数字可重的错排。题解:考虑2n2^n2n容斥,枚举哪些位一样,就是∑T∈S(−1)∣T∣(n−∣T∣)!Π(ai−bi)!\sum_{T \in S}(-1)^{|T|}\frac{(n-|T|)!}{\Pi(a_i-b_i)!}∑T∈S​(−1)∣T∣Π(ai​−bi​)!(n−∣T∣)!​其中bib_ibi​为每种颜色已用个数。考虑dp这个式子,f[i][j]f[i][j]f...

2019-01-25 10:41:57 219

原创 uoj 395. 【NOI2018】你的名字

题意:给出一个模式串SSS,多次询问询问串有多少本质不同的子串在s[l,r]s[l,r]s[l,r]中没有出现。题解:这题好像不是很难首先68分比较sb,对于每个TTT的前缀,只要能求出最短的还没有在TTT中出现过的,和最短的还没有在SSS中出现过的后缀,就能计算这个前缀的贡献。转为求最长的出现过的,就是sam经典操作。现在加上了l,rl,rl,r这个限制,影响的只有在SSS中的的部分...

2019-01-24 11:14:38 335 2

原创 3106: [cqoi2013]棋盘游戏

题意:一个n*n(n>=2)棋盘上有黑白棋子各一枚。游戏者A和B轮流移动棋子,A先走。A的移动规则:只能移动白棋子。可以往上下左右四个方向之一移动一格。B的移动规则:只能移动黑棋子。可以往上下左右四个方向之一移动一格或者两格。和通常的“吃子”规则一样,当某游戏者把自己的棋子移动到对方棋子所在的格子时,他就赢了。两个游戏者都很聪明,当可以获胜时会尽快获胜,只能输掉的时候会尽量拖延时间。...

2019-01-16 21:05:55 322

原创 2119: 股市的预测

题意:问差分后相隔为b的相同子串对数题解:好题啊首先枚举子串的长度L有一个不错的思路是每隔L放一个障碍点,对于每个点统计穿过这个点的答案个数,能做到不重不漏对于关键点i,设l=i,r=i+B+Ll=i,r=i+B+Ll=i,r=i+B+L求出(1,l),(1,r)(1,l),(1,r)(1,l),(1,r)的lcs和(l,n),(r,n)(l,n),(r,n)(l,n),(r,n)...

2019-01-16 20:57:40 242 1

原创 3734: [Ontak2013]Miny

题意:一个平面内有N个地雷,分布在X轴上。每个地雷爆炸后影响的范围是一个贺。在这圆内的地雷也会引爆。现在告诉你每个地雷所在坐标Xi及爆炸半径Ri。请问:这些雷中任一个被引爆后一共会有多少个雷爆炸,注意爆炸是会引起连锁反应的。题解:显然是线段树优化建图+拓扑。然而,因为懒,random_shuffle可以水过code:#include<cmath>#include<...

2019-01-16 20:49:10 383

原创 3440: 传球游戏

题意:当被传到球之后,不同的人会做出不同的动作。第1类人,顺着传来的方向传给下一个人。第2类人,逆着传来的方向传给上一个人。第3类人,顺着传来的方向传给下面第二个人。第4类人,逆着传来的方向传给上面第二个人。现不知是从哪个人开始传,及开始传的方向,求有哪些人无论如何,最多只能碰到一次球题解:显然可以拆点,一种表顺时针传过来,一种逆时针,连向下一个点。那么就是奇环外向树森林了,拓扑...

2019-01-16 20:47:05 416

原创 2728: [HNOI2012]与非

题意:定义a NAND b=!a&b,问用给出的数通过NAND操作能构成区间内多少个数。题解:经过各种实验,发现NAND操作可以替代任何其他逻辑运算操作。如a&b=!aNANDb,!a=aNANDa或和异或也显然可以。那么似乎我们可以构造出所有数了?但是有个问题,假如对于每个数都有第i位和第j为相等,显然最后这两位也是一样的。所以题意转化成了某些位置必须相同,且在[...

2019-01-15 11:45:42 361

原创 2671: Calc

题意:问多少对a,ba,ba,b满足1≤a<b≤n1 \le a < b \le n1≤a<b≤n且(a+b)∣ab(a+b)|ab(a+b)∣ab题解:先考虑什么情况满足a+b∣aba+b|aba+b∣ab设d=gcd(a,b)d=gcd(a,b)d=gcd(a,b),则a′d+b′d∣a′b′d2−>a′+b′∣a′b′da&#x...

2019-01-15 08:58:41 182

原创 hdu 5181 numbers

题意:问多少种出栈方式满足所有限制:xix_ixi​在yiy_iyi​前先出栈。题解:容易看出,一个合法的括号序列一定对应一棵先序遍历为0~n的树(加个虚根)。而这些限制就是当xi<yix_i<y_ixi​<yi​,则yiy_iyi​在xix_ixi​子树外,当xi>yix_i>y_ixi​>yi​,则yiy_iyi​在x...

2019-01-14 20:32:26 204

原创 4664: Count

题意:小叶子的桌面上有 n 本高度不相同的书,n+e 现在需要把这些书按照一定的顺序摆放好。假设第 i 本书的高度为 h[i],n+e 的摆放用一个 1~n的排列 pi 来表示。定义一个摆放的混乱程度:|h[p2]-h[p1]|+|h[p3]-h[p2]|+……+|h[pn]-h[pn-1]|,即相邻两本书的高度差的绝对值之和。已知合法的摆放要求其混乱程度不超过 L。小叶子想要知道,n+e 到底...

2019-01-14 16:37:36 231

原创 4498: 魔法的碰撞

题意:魔法总是令战斗的局面变幻莫测。然而魔力的碰撞则更是天马行空,甚至会出现无法控制而自取灭亡的情况。因此,魔力碰撞总是没有办法的办法。不过在战场上大家可不会想太多了:看到敌人,直接一阵法术秒杀之,规则神马的都是浮云了。因此,必须布阵时就避免可能的魔力碰撞。设想有一条长度为L的战线,你可以把你的魔法师们安排在战线上的每个格子。每一个魔法师都有一个攻击范围di,排兵时必须保证任意两个魔法师的攻击...

2019-01-14 16:31:37 221

原创 codeforces 1101G. (Zero XOR Subset)-less

题意:将一个序列分成尽量多的段,每段值为异或值,且使得不存在非空子集异或和为0。题解:转为前缀和,然后就是选最多元素且不存在非空子集异或和为0。然后就没了?线性基的大小即是答案。code:#include<cstdio>#include<cstdlib>#include<cstring>#include<iostream>usi...

2019-01-12 11:08:25 499

原创 AtCoder Regular Contest 068E - Frequency

题意:给出mmm个区间,对每个1≤i≤n1 \le i\le n1≤i≤n,求出又对少个区间至少含有一个他的倍数。题解:为什么网上的都是反着做呀,正着做也不难啊像我这种sb肯定不会反着做啦枚举i,暴力跳,考虑x−>x+ix->x+ix−>x+i答案增加了多少,也就是说在x之前一定没有计入的区间有多少,直接对每个xxx建主席树即可。举个栗子,当前有[1,...

2019-01-11 21:40:56 198

原创 AtCoder Grand Contest 030F - Permutation and Minimum

题意:设bi=min(a2i,a2i−1)b_i=min(a_{2i},a_{2i-1})bi​=min(a2i​,a2i−1​)先给出aaa部分,将其补全,问bbb数列的方案数。题解:n越小越难系列首先将两位都确定得踢掉,然后将剩下的数拿出来,有些位置是确定的,有cic_ici​表示。那么现在两两配对(不能两个cic_ici​都为1),且只关心较小的那个。从后往前DP。记 fi,j...

2019-01-09 16:55:48 236

原创 AtCoder Grand Contest 030D - Inversion Sum

题意:给你一个数列&a_i&,有若干操作,可以交换a[xi],a[yi]a[x_i],a[y_i]a[xi​],a[yi​],你也可以不进行这个操作。对于所有2Q2^Q2Q种操作方式,问逆序对总和是多少。题解:容易想到fi,x,yf_{i,x,y}fi,x,y​表示前i个操作,使得a[x]<a[y]a[x]<a[y]a[x]<a[y]的方案...

2019-01-09 16:32:00 275

原创 AtCoder Grand Contest 030B - Tree Burning

题意:湖边种了一些树,分别在xix_ixi​处,且呈环形。一开始人在0处(保证没有树),每次可以选择顺时针或逆时针走,直到到一棵树并将它砍掉,问最多走多少距离。题解:用L代表逆时针,R表顺时针。容易想到,似乎可以LRLRLR……这样走,然而样例都过不了……然后感性理解一波,似乎一定存在就有策略是LLLL(RRRR)LRLRLR?就是一开始向一个方向走,之后左右横跳。这个就从后往前扫...

2019-01-09 16:20:35 391 1

原创 Educational DP Contest / DP まとめコンテスト部分题解

前言:dp太差,开个大坑因为太多题了,只做现场AC小于300的题

2019-01-07 09:57:28 1666 6

原创 3163: [Heoi2013]Eden的新背包问题

题意:“寄没有地址的信,这样的情绪有种距离,你放着谁的歌曲,是怎样的心心静,能不能说给我听。”失忆的Eden总想努力地回忆起过去,然而总是只能清晰地记得那种思念的感觉,却不能回忆起她的音容笑貌。 记忆中,她总是喜欢给Eden出谜题:在 valentine’s day 的夜晚,两人在闹市中闲逛时,望着礼品店里精巧玲珑的各式玩偶,她突发奇想,问了 Eden这样的一个问题:有n个玩偶,每个玩偶有对应...

2019-01-07 08:23:17 193

原创 3166: [Heoi2013]Alo

题意:找到一个区间,设kkk位区间次大值,求max(k⊕a[i]∣l≤i≤r)max(k \oplus a[i]|l\le i \le r)max(k⊕a[i]∣l≤i≤r)题解:首先考虑某个值为次大值的区间,有且仅有一个值比他大,这个可以排序+set求出。然后求区间与一个值的异或最大值就是可持久化trie经典题了。code:#include<set>#include&l...

2019-01-05 10:15:50 139

原创 AtCoder Regular Contest 082E - ConvexScore

题意:对于每一个凸多边形的顶点集S,定义其权值为2∣n∣−∣S∣2^{|n|-|S|}2∣n∣−∣S∣,n为凸包内的点集。求所有S的权值和。题解:code:#include<cstdio>#include<cstdlib>#include<cstring>#include<iostream>using namespace std;...

2019-01-04 16:38:39 190 1

原创 4824: [Cqoi2017]老C的键盘&&3167: [Heoi2013]Sao

题意:对一棵树的边定向,求拓扑序方案数。题解:因为两颗子树相对独立,所以可以树形dp。f[x][i]f[x][i]f[x][i]表示x这棵子树,根节点在序列第i位,转移什么就随便写写啦对于n3n^3n3就怎么写都没问题,而n2n^2n2的话,需要更严格的按子树大小合并,即对于合并大小分别为totx,totytot_x,tot_ytotx​,toty​的子树,需要枚举i,ji,ji,j贡献...

2019-01-03 17:14:23 414

原创 4815: [Cqoi2017]小Q的表格

题意:对于n*n的数表,任意一个位置,需要满足:f(a,b)=f(b,a)f(a,b)=f(b,a)f(a,b)=f(b,a)b×f(a,a+b)=(a+b)∗f(a,b)b×f(a,a+b)=(a+b)*f(a,b)b×f(a,a+b)=(a+b)∗f(a,b)每次修改一个位置,需要将相关位置全部修改且求前k行前k列的和。题解:将二式变化可得:f(a,a+b)a(a+b)=f(a,...

2019-01-03 11:09:43 160

原创 4815: [Cqoi2017]小Q的表格

题意:对于n*n的数表,任意一个位置,需要满足:f(a,b)=f(b,a)f(a,b)=f(b,a)f(a,b)=f(b,a)b×f(a,a+b)=(a+b)∗f(a,b)b×f(a,a+b)=(a+b)*f(a,b)b×f(a,a+b)=(a+b)∗f(a,b)每次修改一个位置,需要将相关位置全部修改且求前k行前k列的和。题解:将二式变化可得:f(a,a+b)a(a+b)=f(a,...

2019-01-03 11:09:43 128

原创 3523: [Poi2014]Bricks

题意:有n种颜色的砖块,第i种颜色的砖块有a[i]个,你需要把他们放成一排,使得相邻两个砖块的颜色不相同,限定第一个砖块的颜色是start,最后一个砖块的颜色是end,请构造出一种合法的方案或判断无解。题解:先考虑没有头尾限制怎么构造。首先取出个数最多的那种颜色,放成一排,然后其他的插进去,显然是可行的。而有了头尾限制,那么就先将头尾颜色插入即可,其他不变。链表维护当前颜色序列。细节...

2019-01-02 17:38:44 178

原创 4292: [PA2015]Równanie

题意:对于一个正整数nnn,定义f(n)f(n)f(n)为它十进制下每一位数字的平方的和。现在给定三个正整数k,a,bk,a,bk,a,b,请求出满足a<=n<=ba<=n<=ba<=n<=b且k∗f(n)=nk*f(n)=nk∗f(n)=n的nnn的个数。题解:显然f(n)f(n)f(n)很小,最大就1500左右。直接枚...

2018-12-31 16:52:34 163

原创 4289: PA2012 Tax

题意:给出一个N个点M条边的无向图,经过一个点的代价是进入和离开这个点的两条边的边权的较大值,求从起点1到点N的最小代价。起点的代价是离开起点的边的边权,终点的代价是进入终点的边的边权。题解:拆点,每个点对应相应边权(这个权值只能连向它),差分(大的向小的边权为0),然后跑dij。code:#include<map>#include<queue>#includ...

2018-12-31 16:27:15 217

原创 AtCoder Grand Contest 021题解

A - Digit Sum 2:尽量填9,否则第一位-1#include<cstdio>#include<iostream>#include<cstring>#include<cstdlib>#define LL long longusing namespace std;LL n,a[20],len=0;int main(){ ...

2018-12-31 10:46:04 167

原创 AtCoder Regular Contest 066 题解

D - Xor Sum为什么这个D这么难啊首先显然有v≤uv \le uv≤u,那么只要保证v≤nv \le nv≤n设f[n]f[n]f[n]为v≤nv \le nv≤n的合法点对和,v=a⊕bv=a \oplus bv=a⊕b然后数位dp,考虑a,ba,ba,b的最后一位,有同位0,一个1,和都是1三种情况,分别转移过来。1和2,2和3两种情况显然是独立的,而1,3因为末位一样,似乎...

2018-12-30 16:45:56 296

转载 codeforces 543E. Listening to Music

题解每个线段树节点需要保存四个值,ls,rs,min,tag由于空间不够 所以把他们压缩成一个unsinged long longt[x] = (ls * N + rs) * T + val + tagt[x] % T 即可得到val + tag, ls = t[x] / T / N, rs = t[x] / T % N进行标记永久化过后可以用左右儿子的值解出自己的val,再解出tag...

2018-12-27 19:48:58 246 2

空空如也

空空如也

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

TA关注的人

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