上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 18 下一页
摘要: 第一个subtask应该还是很送分的,就是每次询问两端值的大小,(N+1)/2次即可。 考虑第二个subtask,首先还是先把最小值和最大值询问出来,然后发现不需要询问每一个数,直接将[l+1,r-1]均分成N-1个区间,因为最长区间长度一定不小于平均值,所以应该会跨越两段,若在某一段内有值即可直接 阅读全文
posted @ 2019-05-22 20:54 hfctf0210 阅读(178) 评论(0) 推荐(0) 编辑
摘要: sub1:ans=a*b%c,龟速乘即可。 #include <stdio.h> #include <stdlib.h> unsigned long long a, b, c, d; unsigned long long mul(unsigned long long a,unsigned long 阅读全文
posted @ 2019-05-22 19:17 hfctf0210 阅读(501) 评论(0) 推荐(1) 编辑
摘要: 看到平均值一眼分数规划,二分答案mid,边权变为w[i]-mid,看是否有长度在[L,R]的正权路径。设f[i][j]表示以i为根向下j步最长路径,用长链剖分可以优化到O(1),查询答案线段树即可,复杂度O(nlog2n) 不知为什么bzoj上RE,luogu上AC,暂时不管了。 #include< 阅读全文
posted @ 2019-05-22 14:43 hfctf0210 阅读(276) 评论(0) 推荐(0) 编辑
摘要: 对于操作1,显然可以使用主席树维护,然后对于一条链(x,y),假设lca为f,根为rt,则(rt,x)+(rt,y)-(rt,f)-(rt,fa[f])即为所求的链,在主席树上直接查询即可,查询方式类似于treap/splay对size的询问。 对于操作2,可以用LCT,当然也能启发式合并,每次连边 阅读全文
posted @ 2019-05-22 10:20 hfctf0210 阅读(157) 评论(0) 推荐(0) 编辑
摘要: A*板子题。我的code只能在luogu上过,bzoj上RE/MLE不清楚为啥。 蒟蒻到AFO前2个月不到的时间才学A*,A*其实就是bfs过程中进行剪支删除没必要的搜索。然后其实上这样剪支即可:如果从当前答案+从当前走到1的最短路比已有的最优解更劣,无需扩展次节点。然后k短路中,估价函数=当前节点 阅读全文
posted @ 2019-05-22 09:15 hfctf0210 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 复习SAM板子啦!考前刷水有益身心健康当然这不是板子题/水题…… 很容易发现只在i位置出现的串一定是个前缀串。那么对答案的贡献分成两部分:一部分是len[x]-fa~len[x]的这部分贡献会是r-l+1;剩下一部分1~len-fa-1这部分会和i~r构成答案,写两棵线段树即可。 然后就又是板子题了 阅读全文
posted @ 2019-05-21 23:07 hfctf0210 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 降智好题。本蒟蒻VP时没想到怎么做被题面迷惑了,只会20分的“好”成绩。简直自闭了。 首先显然度为0的点是白给的,根据等比数列求和公式即可求得。然后考虑这个树如果是一颗外向树,就是每个点先父亲再自己。然后直接DP,令f[i][j]表示子树i内Σw=j的概率,转移时直接用背包转移一发即可。边是正向的直 阅读全文
posted @ 2019-05-21 18:32 hfctf0210 阅读(433) 评论(0) 推荐(0) 编辑
摘要: 快要THUSC了,来水几道模板题吧。 这题其实是AC自动机模板。看到长度最短,首先就想到AC自动机。那么就直接暴力法来吧,把每个串建立在AC自动机上,建立fail指针,然后由于n<=12,可以把记录的状态压缩一下,就是压缩走到该节点出现了哪些状态,建立fail指针时也顺带更新一下。然后直接从根节点开 阅读全文
posted @ 2019-05-20 22:54 hfctf0210 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 这题七次方做法显然,但由于我太菜了,想了一会发现也就只会这么多,而且别的毫无头绪。发现直接做不行,那么,容斥! f[i]为至少i个极值的方案,然后这里需要一些辅助变量,a[i]表示选出i个三维坐标均不相同的i个极大值的方案数,g[i]表示i个极大的数任意一个至少有一维坐标相同的点的个数,h[i]表示 阅读全文
posted @ 2019-05-20 22:05 hfctf0210 阅读(541) 评论(2) 推荐(1) 编辑
摘要: 这题72分做法挺显然的(也是我VP的分): 对于n,D<=5000的数据,可以记录f[i][j]表示到第i次随机有j个数字未匹配的方案,直接O(nD)的DP转移即可。 对于D<=300的数据,根据转移系数建立矩阵,跑一遍矩阵快速幂,复杂度O(D3logn),不过要注意卡常数,因为是稀疏矩阵可以判掉无 阅读全文
posted @ 2019-05-20 17:58 hfctf0210 阅读(354) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 18 下一页