06 2021 档案

摘要:题意 给出 n 个线性同余方程构成的方程组 {a1xb1(modp1)a2xb2(modp2)anxbn(modpn)阅读全文
posted @ 2021-06-30 09:23 Alan_Zhao_2007 阅读(69) 评论(0) 推荐(0) 编辑
摘要:题意 给你 2n 个数 a1,a2,,an;b1,b2,,bn,问 a,b 两两的 gcdn5000,值域 106,时间限制 1s。 题解 用 V 代表值域。 显 阅读全文
posted @ 2021-06-29 16:35 Alan_Zhao_2007 阅读(95) 评论(0) 推荐(0) 编辑
摘要:题意 T 次询问,每次给一个正整数 x,问最大的整数 a 满足 a3b=x,其中 b 是正整数。 题解 我想了一个 O(Tx0.25) 的根号分治做法,成功被卡常。 这是正解: 有一个奇妙的性质:把 x 中所有 \(\le x^{0.2 阅读全文
posted @ 2021-06-29 16:20 Alan_Zhao_2007 阅读(89) 评论(0) 推荐(0) 编辑
摘要:题解 根据切比雪夫定理,对于整数 x>1,至少有一个质数 p 满足 x<p<2x。 所以第一天会从数字为 k+1 的人传到某个满足 n2<p<n 的质数 p,第二天会从这个质数传到所有数。 考虑什么情况 阅读全文
posted @ 2021-06-28 20:25 Alan_Zhao_2007 阅读(53) 评论(0) 推荐(0) 编辑
摘要:题解 对于每个点,以深度为下标记录答案。 如果线段树合并想在线,Merge 函数需要这样写: int Merge(int p,int q){ if(!p||!q) return p^q; int res=Newnode(t[p].l,t[p].r,t[p].v+t[q].v); ls(res)=Me 阅读全文
posted @ 2021-06-28 10:42 Alan_Zhao_2007 阅读(45) 评论(0) 推荐(0) 编辑
摘要:这场比赛我只打了一个小时,赛时通过 A,B,C,排名 880(算上 Unofficial)。 A 略。 B 略。 C 显然让每个点的数都取它的边界是最优的,然后 dp 即可。 D 考虑点 1 的配对,设其与 x 构成一条线段。 设 fi 为 \ 阅读全文
posted @ 2021-06-26 21:12 Alan_Zhao_2007 阅读(45) 评论(0) 推荐(0) 编辑
摘要:链接:http://144.202.116.213/contest/4。 A 略。 B 本来想尝试一下数位 dp 的非递归方法,结果写挂了,最后只好写的递归…… 解法显然,略。 C 首先可以发现,我们只要确定了 A 中的前两个元素,后面的元素也都确定了:设 A1=x,A2=y,那 阅读全文
posted @ 2021-06-19 12:04 Alan_Zhao_2007 阅读(56) 评论(0) 推荐(0) 编辑
摘要:题意 给你一片森林,每次询问某个点与多少个点有相同的 k 级祖先。 点数、询问数 105。 题解 将所有树的根节点连向点 0,使得整个森林变成一棵树。 先离线地求出每个询问点的 k 级祖先。用栈维护每个点到点 0 的路径上的所有点,那么其 k 阅读全文
posted @ 2021-06-19 11:27 Alan_Zhao_2007 阅读(33) 评论(0) 推荐(0) 编辑
摘要:题解 考虑对于每个点都开一棵动态开点线段树,以点权为下标、个数为值,记录以这个点为根的子树内的信息。 可以发现交换某个点 u 的代价可以快速计算:在把左、右儿子的线段树合并上来的时候,对于这两棵线段树上的对应点 p,q,不交换的代价会增加 \(v_{\mathrm{rson}(p)} 阅读全文
posted @ 2021-06-18 22:45 Alan_Zhao_2007 阅读(43) 评论(0) 推荐(0) 编辑
摘要:A 如何线性做此题(详细揭秘) 哈哈,考场上写了个 2log 做法,差点没过。 B 考虑离线分治。设当前分治到了 x 区间 [l,r],令 mid=l+r2,设询问形如 (sxi,syi,txi,tyi),那么对于 \((sx_i 阅读全文
posted @ 2021-06-08 13:56 Alan_Zhao_2007 阅读(43) 评论(0) 推荐(0) 编辑
摘要:A 根号分治。 对于 kn 的情况,预处理 fi,j 表示长为 i 的棋盘,黑点之间相差 k 的方案数,那么 fi,j=fi1,j+fij,j。 对于 k>n 的情况,考虑组合数: 阅读全文
posted @ 2021-06-06 16:36 Alan_Zhao_2007 阅读(67) 评论(0) 推荐(0) 编辑
摘要:题目大意 一开始有 n 个点,有 m 个操作,每个操作是以下三种之一: 连边 ij,边权为 w; 对于所有 i[l,r],连边 ij,边权为 w; 对于所有 j[l,r],连边 ij,边权 阅读全文
posted @ 2021-06-03 21:25 Alan_Zhao_2007 阅读(60) 评论(0) 推荐(0) 编辑
摘要:A 先考虑 k=0 怎么做:用 set 维护每个点的前驱和后继,用线段树维护区间内后继编号的最小值以及区间 v 的和。 对于修改操作,它只会修改三个位置的后继:原数、原来的前驱、新前驱。直接在线段树里单点修改就行了。 对于查询操作,由于 k=0,所以只能选最长的一段颜色互不相 阅读全文
posted @ 2021-06-03 16:33 Alan_Zhao_2007 阅读(63) 评论(0) 推荐(0) 编辑
摘要:A 因为每个点的入度至多为 1,所以原图是一个基环树森林。 对于每棵基环树,每次将它里面的无出度的点删掉,就能得到环上的点。 可以发现环上的那些点可以随意转化,于是缩成一个即可。 再对于所有基环树和普通树的根 x,连边 0x。这样就能把它变成一棵树。 看到“最小值最大 阅读全文
posted @ 2021-06-02 16:12 Alan_Zhao_2007 阅读(46) 评论(0) 推荐(0) 编辑
摘要:A 发现答案长度不超过 log2n+1。令 m=log2n+1,取出原串中所有长为 m01 串表示成数字,并取这些数的 mex,即为长度是 m 时的答案。 从大 阅读全文
posted @ 2021-06-02 16:10 Alan_Zhao_2007 阅读(54) 评论(0) 推荐(0) 编辑
摘要:赛时通过 A,B,C1,C2,排名 1100。 A 略。 B 首先可以发现 1111,11111, 是没用的,因为它们都可以用 11,111 表示出来。然后我们考虑一个数 x 是否能够表示成 \(11a+111b=x(a,b\ge 0) 阅读全文
posted @ 2021-06-01 22:43 Alan_Zhao_2007 阅读(66) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示
more_horiz
keyboard_arrow_up dark_mode palette
选择主题