关闭
当前搜索:

[Prufer序列推论] SRM 697 div1 ConnectedStates

首先根据可图性判定定理,可以发现任意一个和为2(n−1)2(n-1)的度数序列都存在方案,然后就是对于一个度数序列求生成树个数,根据Prufer推论,答案应该是 ∑{di}(n−2)!∏ni=1(di−1)!\sum_{\{ d_i\}} {(n-2)!\over \prod_{i=1}^n (d_i-1)!}这个直接做是O(n3)O(n^3)优化成O(n2)O(n^2),参见大佬的题解// BEG...
阅读(189) 评论(0)

[LP对偶费用流] SRM 676 div1 Farmville

二分答案T之后转化成求最小费用 加超级源和超级汇 记每个植物生长的时间为xi,结束的时间为yi,减少的时间为di。 那么限制为 yi>=xi+ti-di, yi>=xi,xj>=yi, ys+T>=xt, 最小化sum di*ci然后直接对偶成费用流在目标函数中不存在的,把权值设为inf// BEGIN CUT HERE #include #include<sstream...
阅读(186) 评论(0)

[区间DP] Codeforces 392E Round #230 (Div. 1) E. Deleting Substrings

好水的E题 f[i][j]表示删完[i,j]区间的最大收益 g[i][j] 表示把[i,j]删成a[i], a[i]+1, a[i]+2 …a[j]的最大收益 h[i][j]类似g[i][j],递减 f[i][j] <- g[i][k]+h[k][j]+v[2*a[k]-a[i]-a[j]+1] #include #include #i...
阅读(241) 评论(0)

[Nim] SRM 304 div1 TheXGame

翻译题解首先给出结论 把一段看做一堆石子 可以做到跟nim游戏等价具体 我们需要归纳证明一个结论 当前current_multiplier为 cc ,石子总数为 nn ,若异或和为 00 那么后手将以至少 n2c{n\over 2}c 的净得分获胜当游戏只剩最后两步的时候,两堆石子分别是n2n\over 2,那么后手会赢 n2c×2−n2c=n2c{n\over 2}c\times 2-{n\o...
阅读(122) 评论(0)

[最短路] HDU 5910 Advanced Traffic System

理解了有一会儿,但是题解确实说清楚了关键是只需要更新一遍#include #include #include #include #include #define pb push_back using namespace std; typedef pair abcd;inline char nc()...
阅读(120) 评论(0)

[杂题] Ural 1961. Cantonese Dialect

根据最大似然估计,应该找出最大的 f(M)=(Mm)(N−Mn−m)(Nn)f(M)={{M\choose m}{N-M \choose n-m}\over {N\choose n}}我们手推下 f(M+1)≥f(M)f(M+1)\ge f(M),得M≤(N+1)mn−1M\le {(N+1)m\over n}-1 那么答案是(N+1)mn{(N+1)m\over n}#include<cstd...
阅读(173) 评论(0)

[两道递推题] 美团 CodeM 初赛 Round A 二分图染色 & OEIS A001499

好久没做过n=107n=10^7这种正常的递推题了二分图染色转化为棋盘模型,即 N×NN\times N 棋盘上放黑白棋子,每个格子至多放一个,同行同列没有相同颜色的棋子。 令bnb_n为只有一种颜色,那么bn=∑ni=0Cin×Pinb_n=\sum_{i=0}^n C_n^i\times P_n^i 然后我们考虑容斥掉两个颜色在同一格,如果一个格子既放黑又放白,那么这一列和这一行不会有其他棋...
阅读(298) 评论(0)

[杂题] AtCoder Grand Contest 007 E Shik and Travel

二分答案 然后每个子树维护二元组(a,b)(a,b)表示存在一个进入该子树后,第一天花费为aa,最后一天花费为bb,中间天都满足相邻叶子距离小于等于MidMid 直接转移状态数太多,我们发现对于一个aa只需要最小的b′b',一个bb只需要最小的a′a',可以two-pointers合并 那么新的状态数|S|≤2×min(|S1|,|S2|)|S|\le 2\times \text{min}(|...
阅读(270) 评论(0)

[霍尔定理] AtCoder Regular Contest 076 F Exhausted?

霍尔定理 有完美匹配必然有任意 |S|≤|N(S)||S|\le|N(S)| 那么这题答案就是max{S−|N(S)|}max\{ S-|N(S)|\}我们枚举N(S)N(S),必然是x≤s∨x≥tx\le s \vee x\ge t的形式 那么对其有贡献的ii,满足Li≤s<t≤RiL_i\le s< t\le R_i 直接扫描线注意特殊讨论N(S)N(S)是全集的情况 这样的话不用满足Li...
阅读(350) 评论(1)

[堆] hihoCoder Challenge 29 D. 不上升序列

出烂了的原题,有可并堆的做法 然而昨晚翻原题的时候发现了精妙的做法看这里 令fi(x)f_i(x)为前ii个数,调整出最大值不超过xx的最小代价 那么fif_i是一条不升的折线 考虑转移 fi(x)=∑y≤xfi−1(y)+|ai−y|f_i(x)=\sum_{y\le x}f_{i-1}(y)+|a_i-y| 这实际上是两条折线合并一下 我们讨论两者的位置关系 实现的话只需要在堆中记下...
阅读(501) 评论(5)

[二幂拆分] hihoCoder Challenge 29 B. 快速乘法 & BZOJ 1111[POI2007]四进制的天平Wag

参考这里 这是个经典问题,我们考虑记忆化搜索的过程,那么每次一个状态x,会产生新状态 ~x+1什么的,而这个状态数总数是O(logn)O(\log n)的 举个链接中的例子 1010110 –> 10110 –> 110 -> 10 0101010 –> 1010 所产生的所有串的数目刚好是x的位数减去末尾的0的数目那么我们就可以直接写一个记忆化搜索,然而这不优美 可以直接从低向上DP...
阅读(403) 评论(11)

[反演 数论] 51Nod 1355 斐波那契的最小公倍数

我好菜啊 出过一万遍的原题 我怎么第一次看见啊 某乎链接 按照zyz的做法 orzzlcm(fS)==∏T⊆S,T≠∅gcd(fT)(−1)|T|+1∏T⊆S,T≠∅f(−1)|T|+1gcd{T}\begin{eqnarray} \text{lcm}(f_S)&=&\prod_{T\subseteq S,T\neq \emptyset }\text{gcd}(f_T)^{(-1)^{|T|+1...
阅读(567) 评论(1)

[容斥] BZOJ 4762 最小集合

看fls的题解吧#include #include #include using namespace std;const int N=1055; const int P=1e9+7;inline void add(int &x,int y){ x+=y; if (x>=P) x-=P; }#define read(x) scanf("%d"...
阅读(129) 评论(0)

[杂题 贪心] BZOJ 2138 stone

#include #include #include using namespace std; typedef long long ll;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; return p1==p2&&(p2=(p1=buf)+fread(buf,1,1...
阅读(241) 评论(0)

[Notes] 手工栈技巧

其实很久之前的东西了,可是最近一直懒得更,为了以后好查看还是更一下最近做一个OJ,系统栈有点小? 然后在fls的教导下,自己YY用goto和define写出了奇怪的代码 自我感觉还很优美?就是这样一个函数inline void dfs(int u){ if (vst[u]) return; vst[u]=1; f[u]=abcd(u,u); while (1){ abcd p...
阅读(152) 评论(0)

[线段树] Codeforces Round #419 (Div. 1) D. Karen and Cards

从小到大枚举xx,剩下的限制是y>bi⋀z>ciy>b_i \bigwedge z>c_i或者y>bi⋁z>ciy>b_i \bigvee z>c_i 对应的是平面上一个矩形或者挖掉一个矩形 发现平面上矩形的交取个min就好了,挖掉的矩形要取并,这个可以用平衡树或线段树维护 大概是这样,我是灵魂画师 #include #include #include<al...
阅读(163) 评论(0)

[多项式求逆] 51Nod TalkingData数据科学精英夏令营挑战赛 F 驴蛋蛋与老孙与微分式

题解里给出了一种解偏微分方程得出生成函数的方法 最后应该是 H(z,x)=sinz+xcoszcosz−xsinzH(z,x)={\sin z+x \cos z \over \cos z−x\sin z} H(z)=sinzcosz=tanz=x+13x3+215x5+o(x5)H(z)={\sin z \over \cos z}=\tan z=x+{1\over 3}x^3+{2\over...
阅读(336) 评论(0)

[数位DP AC自动机] Codeforces 434C Round #248 (Div. 1) C. Tachibana Kanade's Tofu

这个题无话可说 fi,j,k,tf_{i,j,k,t}表示第 ii 位,AC自动机上走到 jj ,当前得分为 kk ,是否小于上界 tt , 复杂度看着很高,其实跑不满?#include #include #include #include #define cl(x) memset(x,0,sizeof(x)) using...
阅读(238) 评论(0)

[分块] BZOJ 4867 [Ynoi2017]舌尖上的由乃

这个题啊 分块 每块O(n√)O(\sqrt n) 把每个块内出现次数做一个前缀和,方便二分的时候O(1)查 然后整块加就打标记,两边零散的,变化不超过10,那么就直接在前缀和数组上修改下 复杂度大概是O(nn√logn+nn√×10)O(n\sqrt n\log n+n\sqrt n\times 10) 还有个问题是前缀和存不下?其实是存的下的,我们只要求从最小值开到最大值就好了,每次整块...
阅读(339) 评论(0)

[拉格朗日乘数法 二分] BZOJ 2876 [Noi2012]骑行川藏

拉格朗日乘数法 ACdreamers [Math & Algorithm] 拉格朗日乘数法首先那个能量肯定是要花完的,就变成一个限制了,乘上拉格朗日乘子,求偏导,变成了 2λkix2i(xi−vi)=12\lambda k_ix_i^2(x_i-v_i)=1 ∑kisi(xi−vi)2=E\sum k_is_i(x_i-v_i)^2=E发现 x≥vx\ge v 且 x2(x−v)x^2(x-v...
阅读(258) 评论(0)
48条 共3页1 2 3 下一页 尾页
    个人资料
    • 访问:309409次
    • 积分:12408
    • 等级:
    • 排名:第1311名
    • 原创:969篇
    • 转载:3篇
    • 译文:0篇
    • 评论:54条
    最新评论