当前搜索:

[最小割] Topcoder SRM558Div1. SurroundingGame

对网格黑白染色 黑的格子和源点连边,白的格子和汇点连边 因为如果保留benefit就必去删去cost或者所以和他相连的格子的cost 大概是这样 跑最小割 #include <cstdio> #include <i...
阅读(50) 评论(0)

[网络流] BZOJ3894 文理分科

经典模型我都不会 每个点拆成三个点,分别表示“选文理”“周围的人都选文科”“周围的人都选理科” 然后根据关系连边 #include <cstdio> #include <iostream> #includ...
阅读(52) 评论(0)

[线性基 贪心] Topcoder SRM557Div1. XorAndSum

对数列建线性基,求出最大异或值 那么不在线性基里面的元素可以把它变成最大异或值 在线性基里的元素,可以把最高位的元素变成最大值,然后把其他数异或上最大值 #include <cstdio> #include <iostre...
阅读(89) 评论(0)

[网络流] Topcoder SRM556DIV. OldBridges

只有一个人的时候,可以把图建出来看是否满流 但是两个人的时候会出现特殊情况 把b1和b2反过来在跑一遍就好了 #include <cstdio> #include <iostream> #incl...
阅读(41) 评论(0)

[容斥] Topcoder SRM555DIV1. MapGuessing

经典题了 枚举初始状态的磁头位置,求出哪些位置可以随意改动,然后大力容斥 #include <cstdio> #include <iostream> #include <algor...
阅读(42) 评论(0)

[Tarjan] BZOJ5201: [NEERC2017]Connections

tarjan的时候每次每次加入一条返祖边,都会至少缩去一个点,那么只要记录一下遍历过的边以及返祖边就可以了 #include <cstdio> #include <iostream> #include &...
阅读(84) 评论(0)

[矩阵乘法优化DP] Topcoder SRM554. TheBrickTowerHardDivOne

dp fi,sfi,sf_{i,s} 表示第 iii 层的状态为 sss 的方案数 转移是一个矩乘的形式 用矩乘快速幂优化 #include <cstdio> #include <iostream>...
阅读(32) 评论(0)

[差分约束] Topcoder SRM553 Div1 Hard. YamanoteLine

可行的长度肯定是一个区间 约束条件可以建城差分约束系统,那么判无解就是判是否有负环 记一下负环上关于总长度的系数,二分就可以了 #include <cstdio> #include <iostream&gt...
阅读(41) 评论(0)

[启发式分裂] BZOJ5200 [NWERC2017]Factor-Free Tree

当找到一个根的时候会把区间分成两个部分,然后递归做 问题就是怎么找根了 可以用bzoj4059那种思路,大概叫启发式分裂吧 对每个数,可以预处理一下在它左边第一个与他不互质的数和在它右边第一个与它不互质的数 然后就 O(nlogn)O(nlog⁡n)\mathcal{O}(n\log n)...
阅读(162) 评论(0)

[多项式exp] LOJ#556. 「Antileaf's Round」咱们去烧菜吧

学一发分治FFT求多项式exp 感觉这种打法应该比牛顿迭代好打多了 #include <cstdio> #include <iostream> #include <algorithm&...
阅读(66) 评论(0)

[二分图] 【JOI2017春季合宿】Port Facility

T2比T1可做多了… 每个玩具相当于一条线段,交叉的线段之间连边,就变成求二分图染色的方案数 考虑怎么建边 把左端点排序,右端点用set维护,假设现在加入的线段为(l,r) 因为有三元环就直接无解了,所以当前所有右端点比r小的线段都是相互包含的,否则就无解 而这时候这些线段之后染色的颜色...
阅读(47) 评论(0)

[DP] Codeforces 936D. World of Tank

令 fi,jfi,jf_{i,j} 表示走到 (i,j)(i,j)(i,j) 时的最大充能 坐标离散后 O(n)O(n)O(n) DP一下就好了 #include <cstdio> #include <iostream&...
阅读(36) 评论(0)

[链剖 FFT] LOJ#6289. 花朵

树形DP的转移是一个卷积的转移形式 可以先链剖,一个点的轻儿子先合并,然后一条重链用分治FFT合并 #include <cstdio> #include <iostream> #include &...
阅读(50) 评论(0)

[eertree] Codeforces 932G. Palindrome Partition

http://codeforces.com/blog/entry/19193 不是很懂证明 #include <cstdio> #include <iostream> #include &l...
阅读(93) 评论(0)

[Bluestein's Algorithm DFT] Codechef REALSET. Petya and Sequence

A和B的运算是卷积形式 考虑把A和B DFT D(A)∗D(B)=0,D(B)≠0D(A)∗D(B)=0,D(B)≠0D(A)*D(B)=0 , D(B)\neq0 也就是 A DFT后至少有一个0 求出模某个质数意义下的 2n2n2n 次单位根 用Bluestein’s Algorit...
阅读(62) 评论(0)

[DP 博弈] Topcoder SRM579 Div1. RockPaperScissors

每一轮的策略跟之前出现过的剪刀石头布的数量有关 另 fi,a,b,cfi,a,b,cf_{i,a,b,c} 表示之前出现了 aaa 次石头, bbb 次剪刀 ,ccc 次布,然后第 iii 个筛子没用过的概率 DP一下,每一轮独立算贡献 // BEGIN CUT HERE // END...
阅读(35) 评论(0)

[卷积定理] LOJ#548. 「LibreOJ β Round #7」某少女附中的体育课

设变换矩阵为 TTT 由卷积定理可以知道 对于 TTT 的每一行的任意 i,ji,ji,j 满足 xi×xj=xi opt xjxi×xj=xi opt xjx_i\times x_j = ...
阅读(55) 评论(0)

[主席树优化建图] LOJ#546. 「LibreOJ β Round #7」网格图

最简单的思路是离散化后 O(k2)O(k2)O(k^2) 搞 然而对于横着的朝向,极长的横着相连的格子的答案是相同的,竖着的同理 那么把极长的相连的格子也缩起来,用主席树优化建图,就可以 O(klogk)O(klog⁡k)O(k\log k) 最短路了 #include &l...
阅读(56) 评论(0)

[费用流] LOJ#545. 「LibreOJ β Round #7」小埋与游乐场

有两种操作是有效的 lowbit(ai)>lowbit(bj)lowbit(ai)>lowbit(bj)lowbit(a_i)>lowbit(b_j) 或者 ai=bjai=bja_i=b_j 当 lowbit(ai)&...
阅读(54) 评论(0)

[分段打表 组合] LibreOJ Round #8 C .MIN&MAX I

由样例一可以知道三个数的位置关系 这四种情况其实是等价的,所以就就考虑其中的一种就好了 对于每一个三元环,我们求出它在所有排列中出现多少次,总和除以 n!n!n! 就是答案 设我们考虑的环为 a3a3a_3 a1a1a_1 a2a2a_2 (a1<a2&...
阅读(63) 评论(0)
    个人资料
    持之以恒
    等级:
    访问量: 10万+
    积分: 5262
    排名: 6498
    文章分类
    最新评论