IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> Codeforces Round #738(Div.2) -> 正文阅读

[开发测试]Codeforces Round #738(Div.2)

Codeforces Round #738(Div.2)

A - Mocha and Math

题意简述:

现在你有一组数组,你可以选定一个区间,并且让这个区间的对称位置进行按位与运算并替换掉,而且,你可以随意的执行这个操作。

最后请问操作完后最小的最大值是多少

思路:

可以发现, a 1 a_1 a1?可以和任何数进行按位与运算, a 2 a_2 a2?同理,以此类推,所有数都可以互相进行按位与运算。

Submission #125955835 - Codeforces

B - Mocha and Red and Blue

题意简述:

有一串板砖,当相邻的砖颜色相同的时候,我们就视这些板砖为不好的砖,我们有两种颜色,对于一串板砖,我们知道了部分,给出最好的砖块排列

Submission #125968330 - Codeforces

C - Mocha and Hiking

题意简述:

n + 1 n+1 n+1 个城市,其中 n n n 个城市是 从 i i i 号到 i + 1 i+1 i+1 号的

另外第 n + 1 n+1 n+1 个城市,和 1 ~ n 都存在路径,且都是单向路。

求问,有没有哈密顿路径,有就打出来。

Submission #125987483 - Codeforces

D1 - Mocha and Diana (Easy Version)

题意简述:

有两个森林,当第一个森林的 u v 相连的时候,第二个森林也会相连。如果在同一个连通块中,则不连。求问,最多能连多少个

思路:

用并查集维护连通块,暴力扫即可

Submission #125995116 - Codeforces

D2 - Mocha and Diana (Hard Version)

思路:

我们将其简化为网格图的形式,其中行数表示在第一个森林中,列数表示在第二个森林中。对于每行,我们维护一个行集合,集合里的元素是行所在的集合中所有元素,在第二个森林中元素所在的集合。同样的列集合也是如此。

所以,题目的意思变成了,我们最多能够找到多少对 ( i , j ) (i,j) (i,j) i ≠ j i\ne j i?=j ,将这两个集合合并。

那么我们在找的过程中,将会涉及到一些合并操作,我们采取按秩合并的方式进行合并,这里秩的大小是集合元素的个数,将小的元素插入大的元素中。

并且在合并过程中,我们只保留代表元。

Submission #126104556 - Codeforces

E - Mocha and Stars

题意简述:

首先我们忽略其中一个条件 : [ gcd ? ( a 1 , a 2 , . . . a n ) = 1 ] [\gcd(a_1,a_2,...a_n)=1] [gcd(a1?,a2?,...an?)=1]

对于条件

∑ i = 1 n ≤ m a i ∈ [ L i , R i ] \sum\limits_{i=1}^n\le m \\ a_i\in[L_i,R_i] i=1n?mai?[Li?,Ri?]

我们设 F [ i ] F[i] F[i] 表示,数字 i i i 共有多少个,

那么我们便有如下的过程转移方程

F [ i ] = { 0 ( i < L ) ∑ j = 0 i ? L F [ j ] ( L ≤ i ≤ R ) ∑ j = i ? R i ? L ( i > R ) F[i]= \begin{cases} & 0 &(i < L) \\ & \sum\limits_{j=0}^{i-L} F[j] &(L\le i \le R) \\ & \sum\limits_{j=i-R} ^{i-L} &(i > R) \end{cases} F[i]=???????????????0j=0i?L?F[j]j=i?Ri?L??(i<L)(LiR)(i>R)?

对于片段和,我们可以采用前缀和的思想来快速求出,因此,我们定义 S [ i ] S[i] S[i] 表示上一次前 i i i 项的和,那么我们的方程就变成了。

F [ i ] = { 0 ( i < L ) S [ i ? L ] ( L ≤ i ≤ R ) S [ i ? L ] ? S [ i ? R ? 1 ] ( i > R ) F[i]=\begin{cases} & 0 &(i < L) \\ & S[i-L] &(L\le i \le R) \\ & S[i-L] - S[i-R-1] &(i > R) \end{cases} F[i]=???????0S[i?L]S[i?L]?S[i?R?1]?(i<L)(LiR)(i>R)?
最后,我们将 gcd ? \gcd gcd 条件放入其中,我们可以通过容斥原理来搞定。求取莫比乌斯函数后。 (详细请见对称筛)

那么对于每个 d 来说

我们要求的不等式就是,
∑ i = 1 n b i × d ≤ m b i × d = a i ∈ [ L i , R i ] \sum\limits_{i=1}^n b_i\times d \le m \\ b_i\times d = a_i \in[L_i,R_i] i=1n?bi?×dmbi?×d=ai?[Li?,Ri?]
我们将这个 d 除去就得到
KaTeX parse error: Expected group after '_' at position 6: \sum_?\limits{i=1}^n …
这个式子和上述式子完全一致,因此,我们就可以再次求取答案。

Submission #126161571 - Codeforces

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-08-18 12:59:46  更:2021-08-18 13:00:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年4日历 -2024/4/28 9:10:24-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码