11 2015 档案

摘要:因为允许5%的误差..把连续一段的j-i看作一个数..然后记个前缀和就好了...-------------------------------------------------------------------------#include#include#include#includeusing... 阅读全文
posted @ 2015-11-30 20:49 JSZX11556 阅读(262) 评论(0) 推荐(0)
摘要:首先要知道一种prufer数列的东西...一个prufer数列和一颗树对应..然后树上一个点的度数-1是这个点在prufer数列中出现次数..这样就转成一个排列组合的问题了。算个可重集的排列数和组合数就行了...要写高精..--------------------------------------... 阅读全文
posted @ 2015-11-30 19:56 JSZX11556 阅读(221) 评论(0) 推荐(0)
摘要:题目戳这里:51NOD算法马拉松8某天晚上kpm在玩OSU!之余让我看一下B题...然后我就被坑进了51Nod...A.还是01串水题..怎么乱写应该都可以。记个前缀和然后枚举就行了.时间复杂度O(N)#include#include#includeusing namespace std;const... 阅读全文
posted @ 2015-11-30 13:28 JSZX11556 阅读(249) 评论(0) 推荐(0)
摘要:先最短路预处理, 然后状压就行了--------------------------------------------------------------------------#include#include#include#include#includeusing namespace std;... 阅读全文
posted @ 2015-11-29 12:08 JSZX11556 阅读(405) 评论(0) 推荐(0)
摘要:对于d, 记{ai}中是d的倍数的数的个数为c, 那么有:直接计算即可,复杂度O(NlogN+MlogM)---------------------------------------------------------------------------#include#include#inclu... 阅读全文
posted @ 2015-11-28 21:57 JSZX11556 阅读(268) 评论(0) 推荐(0)
摘要:打个表找一下规律可以发现...就是卡特兰数...卡特兰数可以用组合数计算。对于这道题,ans(n) = C(n, 2n) / (n+1) , 分解质因数去算就可以了...-----------------------------------------------------------------... 阅读全文
posted @ 2015-11-27 20:56 JSZX11556 阅读(277) 评论(0) 推荐(0)
摘要:对于询问[L, R], 我们直接考虑每个p(L≤p≤R)的贡献,可以得到然后化简一下得到这样就可以很方便地用线段树, 维护一个p, p*vp, p*(p+1)*vp就可以了----------------------------------------------------------------... 阅读全文
posted @ 2015-11-27 18:21 JSZX11556 阅读(736) 评论(2) 推荐(0)
摘要:BZOJ先剧透了是矩阵乘法...这道题显然可以f(x) = f(x-1)*10t+x,其中t表示x有多少位。这个递推式可以变成这样的矩阵...(不会用公式编辑器...), 我们把位数相同的一起处理, 那么10^t就可以确定,加上快速幂就行了------------------------------... 阅读全文
posted @ 2015-11-26 19:06 JSZX11556 阅读(345) 评论(0) 推荐(0)
摘要:字符串哈希..然后枚举每一位+各种判断就行了--------------------------------------------------------------------------------#include#include#includeusing namespace std;type... 阅读全文
posted @ 2015-11-25 21:54 JSZX11556 阅读(257) 评论(0) 推荐(0)
摘要:最小割..S连每个人(容量:选择理科的愉悦);每个人连T(容量:选择理科的愉悦) .对于每一组(x, y, w)x和y同选理增加的愉悦w,新建节点V,V连x(INF),V连y(INF), S连V(w)对于每一组(x, y, w)x和y同选文增加的愉悦w,新建节点V,x连V(INF),y连V(INF)... 阅读全文
posted @ 2015-11-25 20:41 JSZX11556 阅读(260) 评论(0) 推荐(0)
摘要:一维离散化, 扫描线扫另一维, 用线段树维护POJ建议交C++...G++貌似double要用%f ? 反正同一份代码C++AC,G++WA-------------------------------------------#include#include#include using namesp... 阅读全文
posted @ 2015-11-25 19:37 JSZX11556 阅读(213) 评论(0) 推荐(0)
摘要:有限制的最多就K个, 所以我们处理一下这K个就行了. 其他可以任选, 贡献都是∑i (1≤i≤N), 用快速幂。-------------------------------------------------------------------#include#include#includeusi... 阅读全文
posted @ 2015-11-24 19:34 JSZX11556 阅读(268) 评论(0) 推荐(0)
摘要:把图反向,然后按拓扑序贪心地从大到小选, 最后输出。set比priority_queue慢...---------------------------------------------------------------------#include#include#include#includeu... 阅读全文
posted @ 2015-11-23 21:07 JSZX11556 阅读(250) 评论(0) 推荐(0)
摘要:靠着暴力+直觉搞出递推式 f(n) = ∑F(i)f(n-i) (1≤i≤n) (直接想大概也不会很复杂吧...). f(0)=0感受一下这个递推式...因为和斐波那契有关..我们算一下f(n)+f(n+1)...f(n)+f(n+1)= F(1)f(n-1)+F(2)f(n-2)+…+F(n)f(... 阅读全文
posted @ 2015-11-23 19:47 JSZX11556 阅读(313) 评论(0) 推荐(0)
摘要:虽然AC了但是时间惨不忍睹...不科学....怎么会那么慢呢...无修改的区间众数..分块, 预处理出Mode[i][j]表示第i块到第j块的众数, sum[i][j]表示前i块j出现次数(前缀和,事实上我是写后缀和..因为下标从0开始..), cnt[i][j][k]表示第i块中的前j个数中,k出... 阅读全文
posted @ 2015-11-23 17:42 JSZX11556 阅读(258) 评论(0) 推荐(0)
摘要:枚举Fl, 就变成一个整数划分的问题了...f(i,j) = f(i-j,j-1)+f(i-j,j)-f(i-N-1,j-1)递推。f(i,j)表示数i由j个不同的数组成,且最大不超过N的方案数-----------------------------------------------------... 阅读全文
posted @ 2015-11-23 12:32 JSZX11556 阅读(416) 评论(0) 推荐(0)
摘要:n1+n2次一定可以满足..然后假如之前土地集合S1的子集subs1和之后土地集合S2的子集subs2相等的话...那么就少了2个+操作...所以最后答案就是n1+n2-少掉的最多操作数, 由状压dp完成...---------------------------------------------... 阅读全文
posted @ 2015-11-22 21:39 JSZX11556 阅读(251) 评论(0) 推荐(0)
摘要:用个set维护就可以水过去...O(NlogN)应该可以用单调队列O(N)....----------------------------------------------------------------------#include#include#include#includeusing n... 阅读全文
posted @ 2015-11-22 20:45 JSZX11556 阅读(246) 评论(0) 推荐(0)
摘要:把暗恋关系看成无向边, 那某个点度数超过2就无解。存在环也是无解。有解的话对连通分量进行排列就行了。----------------------------------------------------------------------------------#include#include#i... 阅读全文
posted @ 2015-11-22 14:52 JSZX11556 阅读(236) 评论(0) 推荐(0)
摘要:dp(i)表示处理完[i,n]且i是放守卫塔的最小费用.dp(i) = min{dp(j) + (j-i)(j-i-1)/2}+costi(i#include#includeusing namespace std;typedef long long ll;#define f(x) (dp[x] * ... 阅读全文
posted @ 2015-11-22 13:15 JSZX11556 阅读(240) 评论(1) 推荐(0)
摘要:高斯消元解xor方程组...暴搜自由元+最优性剪枝-----------------------------------------------------------------------------#include#include#include#includeusing namespace ... 阅读全文
posted @ 2015-11-22 09:25 JSZX11556 阅读(203) 评论(0) 推荐(0)
摘要:高斯消元解异或方程组...然后对自由元进行暴搜。树形dp应该也是可以的...--------------------------------------------------------------------------------------#include#include#include#i... 阅读全文
posted @ 2015-11-21 22:37 JSZX11556 阅读(436) 评论(0) 推荐(0)
摘要:直接点分治, 用平衡树(set就行了...)维护.-------------------------------------------------------------------------------------#include#include#include#include#include... 阅读全文
posted @ 2015-11-20 19:34 JSZX11556 阅读(421) 评论(0) 推荐(0)
摘要:树形dp...dp(x, 0)表示结点x不放士兵, 由父亲控制;dp(x, 1)表示结点x不放士兵, 由儿子控制;dp(x, 2)表示结点x放士兵.----------------------------------------------------------------------------... 阅读全文
posted @ 2015-11-20 18:13 JSZX11556 阅读(480) 评论(0) 推荐(0)
摘要:-----------------------------------------------------------------------#include#include#includeusing namespace std;const int MOD = 10000;const int max... 阅读全文
posted @ 2015-11-19 18:35 JSZX11556 阅读(258) 评论(0) 推荐(0)
摘要:把双向边拆成2条单向边, 用边来转移...然后矩阵乘法+快速幂优化---------------------------------------------------------------------------------------------#include#include#include... 阅读全文
posted @ 2015-11-19 14:08 JSZX11556 阅读(234) 评论(0) 推荐(0)
摘要:贴个代码...---------------------------------------------------------------------#include#include#includeusing namespace std;const int maxn = 200009;const ... 阅读全文
posted @ 2015-11-17 22:04 JSZX11556 阅读(217) 评论(0) 推荐(0)
摘要:题目大意:给一个字符串S,令F(x)表示S的所有长度为x的子串中,出现次数的最大值。F(1)..F(Length(S))建出SAM, 然后求出Right, 求Right可以按拓扑序dp..Right就是某个点到结束状态的路径数, parent树上last的那一条链都是结束状态...然后用Right去... 阅读全文
posted @ 2015-11-16 22:01 JSZX11556 阅读(237) 评论(0) 推荐(0)
摘要:把串S复制成SS然后扔进后缀自动机里, 从根选最小的儿子走, 走N步就是答案了...一开始还想写个treap的...后来觉得太麻烦..就用map了...--------------------------------------------------------------------------... 阅读全文
posted @ 2015-11-16 19:00 JSZX11556 阅读(253) 评论(0) 推荐(0)
摘要:day0坐动车到广州..下午就在酒店颓...day1早上6:30起床...大概8:00到六中..ZSJZ众貌似很晚才到..毕竟他们酒店就在学校门口(真的就刚刚好是门口...),大概8:15进去机房..试机时很无聊..不知道敲什么好,写了点头文件然后就等着比赛开始。解压密码是 niNaliXiaxue... 阅读全文
posted @ 2015-11-14 17:09 JSZX11556 阅读(351) 评论(0) 推荐(0)
摘要:时间过得好快...明天就要出发去NOIP了...然后再过半年就要省选了....希望自己能取得好成绩吧...NOIP2015 bless all ! 阅读全文
posted @ 2015-11-05 20:51 JSZX11556 阅读(177) 评论(2) 推荐(0)
摘要:枚举第一个的情况...判断一下是否冲突...------------------------------------------------------------------#include#include#includeusing namespace std;const int maxn = 1... 阅读全文
posted @ 2015-11-05 15:41 JSZX11556 阅读(239) 评论(0) 推荐(0)
摘要:dp(l, r)表示[l, r]这段作为一棵树的最小访问代价.对于dp(l, r), 我们枚举它的根x, 则dp(l, r) = min(dp(l, x-1)+dp(x+1, r)+C*fx) + K*∑fi (l≤i≤r)--------------------------------------... 阅读全文
posted @ 2015-11-04 18:35 JSZX11556 阅读(432) 评论(0) 推荐(0)
摘要:把障碍点看做点(边)权为1, 其他为0. 对于每个点跑spfa, 然后和它距离在T以内的就可以更新答案------------------------------------------------------------------------#include#include#include#in... 阅读全文
posted @ 2015-11-04 18:04 JSZX11556 阅读(309) 评论(0) 推荐(0)
摘要:找出同时在他们最短路上的边(dijkstra + dfs), 组成新图, 新图DAG的最长路就是答案...因为两人走同一条路但是不同方向也可以, 所以要把一种一个的s,t换一下再更新一次答案-------------------------------------------------------... 阅读全文
posted @ 2015-11-03 23:11 JSZX11556 阅读(284) 评论(0) 推荐(0)
摘要:dp(i,j,k)表示在处理第i个业务, 另外2个在j,k处. 第一维可以滚动...--------------------------------------------------------------------------------#include#include#includeusin... 阅读全文
posted @ 2015-11-03 21:22 JSZX11556 阅读(280) 评论(0) 推荐(0)
摘要:O(S²)枚举2个诅咒机, 然后O(n²)BFS去判断. 构成一个有向图, tarjan缩点, 然后就是求DAG的最长路..-----------------------------------------------------------------------------#include#in... 阅读全文
posted @ 2015-11-03 15:38 JSZX11556 阅读(301) 评论(0) 推荐(0)
摘要:难得的ZJOI水题...DFS一遍就行了...-----------------------------------------------------------------------#include#include#include#includeusing namespace std;cons... 阅读全文
posted @ 2015-11-03 14:02 JSZX11556 阅读(262) 评论(0) 推荐(0)
摘要:dp(x, y)表示第x根柱子上y个盘子移开后到哪根柱子以及花费步数..然后根据汉诺塔原理去转移...-----------------------------------------------------------------------#include#include#includeusin... 阅读全文
posted @ 2015-11-03 11:08 JSZX11556 阅读(365) 评论(0) 推荐(0)
摘要:好像很多人用并查集写的...前缀和, 则 sumt- sums-1= v, 拆成2条 : sumt ≤ sums-1 + v, sums-1 ≤ sumt - v 就是一个差分约束, 建图跑SPFA..想起之前codeVS某场月赛T1有些人用带权并查集..然而我是差分约束水过去的...-------... 阅读全文
posted @ 2015-11-02 23:48 JSZX11556 阅读(259) 评论(0) 推荐(0)
摘要:O(N2)算出有x条直径然后答案就是x(x-1)/2...这个数据范围是闹哪样!------------------------------------------------------------------------------------------#include#include#inc... 阅读全文
posted @ 2015-11-02 23:02 JSZX11556 阅读(388) 评论(0) 推荐(1)
摘要:取最大的K个, 用堆和RMQ来加速...-----------------------------------------------------------------#include#include#include#includeusing namespace std;typedef long ... 阅读全文
posted @ 2015-11-02 17:16 JSZX11556 阅读(286) 评论(0) 推荐(0)
摘要:按t2排序然后贪心...----------------------------------------------------------------------------#include#include#include#includeusing namespace std;const int ... 阅读全文
posted @ 2015-11-02 12:06 JSZX11556 阅读(236) 评论(0) 推荐(0)
摘要:只要存在N个x, y坐标均不相同的黑格, 那么就一定有解. 二分图匹配, 假如最大匹配=N就是有解的, 否则无解----------------------------------------------------------------------------------#include#inc... 阅读全文
posted @ 2015-11-02 11:41 JSZX11556 阅读(216) 评论(0) 推荐(1)
摘要:可以得到N条N元一次方程, 高斯消元就OK了..时间复杂度O(N3)-------------------------------------------------------------------#include#include#include#includeusing namespace s... 阅读全文
posted @ 2015-11-02 11:17 JSZX11556 阅读(242) 评论(0) 推荐(0)
摘要:2-sat...假如一个评委喜好的2样中..其中一样没做, 那另一样就一定要做, 这样去建图..然后跑tarjan. 时间复杂度O((n+m)*K)----------------------------------------------------------------------------... 阅读全文
posted @ 2015-11-01 22:30 JSZX11556 阅读(307) 评论(0) 推荐(0)
摘要:求出前缀和, 那么以第x个元素结尾的最大异或值是max(sumx^sump)(1≤p#include#include#includeusing namespace std;const int maxn = 400009;const int n = 31;int read() { char c = g... 阅读全文
posted @ 2015-11-01 10:40 JSZX11556 阅读(301) 评论(0) 推荐(0)