随笔分类 -  题解-UOJ

摘要:神奇的题目 先考虑一个序列a[i]的情况(经典问题),维护数组f[i]表示以i为结尾的本质不同的序列个数 每次枚举上一位j,并且保证每种a只取最后一个出现的来转移 设g[a]表示最后一个a的对应的f的值,发现每次把f[i]=Σg[j],然后把g[a[i]]=f[i]=g[j] 实际就是每出现一个a, 阅读全文
posted @ 2023-02-21 01:12 gmh77 阅读(139) 评论(0) 推荐(0) 编辑
摘要:题目描述 题解 结论:坏串长度<=n1+n2 口胡证明: 把两个图合并,第二个图的标号加上n1,状态可以看作一个长度位n1+n2的向量,转移看作26个矩阵,不同位的不同字母的值不同(随机),基本可以视作哈希值与串一一对应 称一些串组成的集合为向量空间,一个向量空间的维数等价于线性无关组大小 每次转移 阅读全文
posted @ 2020-08-31 21:41 gmh77 阅读(276) 评论(0) 推荐(0) 编辑
摘要:题目描述 http://uoj.ac/problem/69 题解 做之前瞄了先一眼题解,get到了核心部分 因为给的运算符很不靠谱,所以考虑实现一个靠谱的运算符 题解的"正常"做法是按照行号来编号,并不是很明白 正常做法(自己写的):如果要实现c=a+b,那么搞一个d=c-a-b判断d是否为0来跳转 阅读全文
posted @ 2020-08-15 19:13 gmh77 阅读(125) 评论(0) 推荐(0) 编辑
摘要:题目描述 题解 考场写了35,本机跑5s感觉布星就没调,结果因为把long long存到double里面爆精度WA掉了,实际跑了2s,然后套个平衡规划就过了 把询问离线,两个点到询问点距离的关系只会改变一次,连线做中垂线交y轴即可得到改变的位置,堆维护即可有35,分成10块搞即可AC code #i 阅读全文
posted @ 2020-08-14 10:21 gmh77 阅读(286) 评论(0) 推荐(0) 编辑
摘要:题目描述 题解 第一道玩出来的提答题 数据特殊在于生成方式,是一条链上面随机加边(虽说没什么卵用) 手玩可以玩出点1,纯暴力可以跑出点2,3+4~9的1分 xjb剪枝可以得到40~60不等的分数,以上做法均未写过 神必做法: 首先一个显然是假的做法,每次把两条链首位相接,最后接到只有一条链,然后连点 阅读全文
posted @ 2020-08-13 18:53 gmh77 阅读(278) 评论(0) 推荐(0) 编辑
摘要:题目描述 n<=4000 题解 线段树性质:一次区间查找从左往右对应右子树->右子树->...->左子树->左子树 把[l,r]向r+1连边,r+1向[r+1,l']连边,跑上下界最小流即可 上下界最小流=上下界可行流-残量网络T->S最大流,可行流=T->S的inf边跑过的流量 染色树的叶子节点要 阅读全文
posted @ 2020-08-02 08:25 gmh77 阅读(184) 评论(0) 推荐(0) 编辑
摘要:题目描述 n,m<=5e5,x<=1e3 题解 想了一下就想出了log^2的,之后刚了一个下午尝试去掉一个log结果发现把set改成优先队列就过了 log^2的自然做法: 在线段树上set里挂加进去的数,如果下传的话时间会假,因此不下传标记 弹栈就单点查询,把经过的所有区间内时间最大的弹掉,第二大的 阅读全文
posted @ 2020-07-29 22:55 gmh77 阅读(322) 评论(0) 推荐(0) 编辑
摘要:题目描述 a,b,c1018 题解 先除gcd 假设给出a和b,构出b,2b,4b,8b...2^kb(2^kb<a),那么显然是(a,b),(a-b,b),(a,a-2b)来使b*2 可以尝试每次乘4,发现结果是一样的 辗转相除求出gcd之后即可构出1,2,4,8..., 阅读全文
posted @ 2020-07-29 22:48 gmh77 阅读(122) 评论(0) 推荐(0) 编辑
摘要:题目描述 题解 想不到离线,感觉可以log^2带修主席树维护乱搞 好像线段树维护单调栈有85 离线从后往前做,设当前位置为x,线段树直接维护每个时刻t上[x,n]的后缀最小值以及答案 每个位置的值是若干区间,线段树上区间取min,如果一个点被修改就答案+1 没有区间加吉司机树可以做到严格$O(n\l 阅读全文
posted @ 2020-07-16 15:40 gmh77 阅读(555) 评论(0) 推荐(0) 编辑
摘要:题目描述 EGF 普通生成函数(OGF)F(x)=aixi 对应的指数型生成函数(EGF)G(x)=aixii! 用于解决组合问题,两个指数型生成函数相乘时 \(A(x)B(x)=\sum a_ib_j\frac{x^{i+j}}{i!j 阅读全文
posted @ 2020-07-15 22:47 gmh77 阅读(303) 评论(0) 推荐(0) 编辑
摘要:题目描述 题解 很签到题 操作2先假设全部为黑,那么变成了每选一个点便会取反相连的边 如果能暴力搞出所有环就可以高斯消元判断,也许能过40 对原图建dfs树,发现只需要保留返祖边加上对应路径的环即可,任何的环都可以通过这些环异或得到,于是环的个数变为m级别,高斯消元O(m^3)可以70 设返祖边(u 阅读全文
posted @ 2020-07-14 21:19 gmh77 阅读(182) 评论(0) 推荐(0) 编辑
摘要:题目描述 题解 必须要发掘出性质才能搞,乱找找不满 一草稿纸的114514越看越草 发现5只出现一次,而且14是114的子串 显然可以想到每次按最近的来匹配,一次找出一个114514 发现114511451414会挂掉,原因是把第二个5的114给拆掉了 1的数量最多,所以只考虑总量不考虑单独每个 对 阅读全文
posted @ 2020-07-13 11:07 gmh77 阅读(272) 评论(0) 推荐(0) 编辑
摘要:题目描述 n<=5e5,w<=1e18,T=5 题解 需要各种前置姿势的吼题 同余最短路 求形如aixi=A;(ai>=0,xN)的A的个数 做法是按找%min(a)变成min(a)*x+b来分类跑最短路,f[i]表示%min(a)=i的最小的b,最后直接统计 本题中可 阅读全文
posted @ 2020-07-04 18:08 gmh77 阅读(218) 评论(0) 推荐(0) 编辑
摘要:题目描述 n<=5*10^6 题解 好题 直接贪心/dp是假的,反例考虑两条长链+上面的一些短链 硬点本体只会往下走,分身负责清理掉伸出去的链,最后留下一条最长链一起走下去 dp方程式见官方题解,直接做是n^2的 一些性质: ①留下的链一定在本体所在点上,否则可以再分一段 ②转移过来的点之间的距离要 阅读全文
posted @ 2020-07-02 16:41 gmh77 阅读(222) 评论(0) 推荐(0) 编辑
摘要:题目描述 n define fo(a,b,c) for (a=b; a=c; a ) define ll long long // define file using namespace std; int n,i,j,k,l; ll m,s; int main() { ifdef file freo 阅读全文
posted @ 2020-05-23 08:34 gmh77 阅读(170) 评论(0) 推荐(0) 编辑
摘要:http://uoj.ac/problem/247 口胡 找不到题解口胡一下,5k+无grader不打算写 考虑先求出每个传送器的位置,再求出之间的关系 首先最外圈保证没有传送器,并且传送器的8方向都是空格子 这说明假设走到了一个传送器后, 只能在3\ 3的范围内走 ,否则可能会走到其他传送器上而使 阅读全文
posted @ 2020-04-17 11:47 gmh77 阅读(270) 评论(0) 推荐(0) 编辑
摘要:[Toc] 被吊打了 先鸽着 JOI的本质:数 据 结 构 优 化 建 图 D1T1 https://loj.ac/problem/3271 爆零辣 显然的dp:设f\[i]\[j]\[0/1]表示当前到i放了j个A当前是A/B 是否合法 发现对于每个i和0/1,合法的j是一个连续段 证明可以归纳, 阅读全文
posted @ 2020-03-29 21:57 gmh77 阅读(321) 评论(0) 推荐(0) 编辑
摘要:题目描述 这是一道 通信题 。 UOJ 又来到了新的一年,今年鸽子们不出意外的把比赛鸽到了12月月底。今年鸽子们决定玩点不一样的:它们要来打(tong)雪(xin)仗(ti)。 小 A (Alice),小 B (Bob) 和小 C (Cplusplus) 计划进行一场打雪仗比赛, 阅读全文
posted @ 2020-03-12 19:58 gmh77 阅读(230) 评论(0) 推荐(0) 编辑
摘要:题目大意 完整题目: http://uoj.ac/problem/76 n只狗n个人,有至少一只病狗,每个人能看出其他一些人的狗是否是病狗(成一个有向图) 每天早上所有人会集会,如果一个人判断出了自家的狗是病狗下午就会把狗毙了,当听到枪声之后所有人都不再集会 已知全部人都绝顶聪明且知道有至少一只病狗 阅读全文
posted @ 2020-03-03 22:35 gmh77 阅读(207) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示