跳至内容
CVBB ACM Team
用户工具
注册
登录
站点工具
搜索
工具
显示页面
修订记录
Copy this page
导出 PDF
反向链接
最近更改
媒体管理器
网站地图
注册
登录
>
最近更改
媒体管理器
网站地图
您在这里:
front_page
»
2020-2021
»
teams
»
farmer_john
»
2sozx
»
codeforces_round_641_div._1
2020-2021:teams:farmer_john:2sozx:codeforces_round_641_div._1
本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。
=====A===== * 题意:给定一个长度为 $n(n{\le}10^5)$ 序列 $s(s_i{\le}2{\times}10^5)$ ,令 $t=\{lcm(s_i,s_j)|i<j\}$ ,求 $gcd(t)$ * 题解:对于一个质数 $p$,设 $s_i$ 中最大含有 $p^{a_i}$ ,那么 $p$ 对于答案的贡献为 $p^{a_j}$ 其中 $a_j$ 为 $a_i$ 里面第二小的数。 =====B===== * 题意:给定一个长度为 $n(n{\le}10^5)$ 序列 $a(a_i{\le}10^9)$ ,以及 $k(k{\le}10^9)$ ,每次操作取其中的一段 $l{\sim}r$ 并将这段区间内部所有元素变为这段区间内第 $\lfloor{\frac{(r-l+2)}{2}}\rfloor$ 小的数,问这个序列能否最终都变为 $k$ * 题解:序列中没有 $k$ 显然不能变为 $k$ ,如果不存在连续的三个数使得其中至少两个数 ${\ge}k$ 那么就不能变成 $k$ ,否则可以。证明如下: * 如果不存在连续的三个数其中至少两个数 ${\ge}k$ ,那么无论取长度为多少的序列都只能将其中 ${\ge}k$ 的数变成 $<k$ 的数。 * 如果存在,找到其中的一个区间,如果这个区间包含 $k$ 那么可以优先把这个全部变成 $k$ ,依次向左右移动即可。如果不包含 $k$ 那么可以先把这个序列变成全部 ${\ge}k$ 的数,向左右移动,如果碰到了 $k$ 则这个包含 $k$ 的区间可将这个区间全部变成 $k$ ,向左右移动即可。 =====C===== * 题意:$n{\times}m$ 的矩阵 $(n,m{\le}10^3)$ 每个格子可以为黑色或者白色,对于格子 $i,j$ ,如果相邻的格子中有与这个格子颜色相同的格子,那么 $i,j$ 在 $1$ 秒后会变为相反的颜色,否则不会变,问 $p(p{\le}10^{18})$ 秒后格子 $i,j$ 的颜色。询问次数 $t{\le}10^5$ * 题解:首先我们可以发现如果一个格子在初始状态下不会发生改变,但是其相邻的格子在初始状态下会发生改变,那么这个格子在下一个状态中一定会发生改变。这样我们就可以通过 $BFS$ 初始状态下会发生改变格子的边界来确定每个格子在什么时候会发生改变,之后就可以做到 $O(1)$ 的询问
2020-2021/teams/farmer_john/2sozx/codeforces_round_641_div._1.txt
· 最后更改: 2020/05/13 16:10 由
2sozx
页面工具
显示页面
修订记录
反向链接
Copy this page
导出 PDF
回到顶部