是个补题记录。

1419

除了 F 场上都过了。

CF1419A Digit Game

这题好多人 FST 啊……

考虑如果串长为奇数那么最后操作的肯定是第一个人,串长为偶数的最后操作的肯定是第二个,而且两个人的操作互相独立。

所以如果最后一个操作的是第一个人而且存在一个奇数位置上的数是奇数的话那么第一个人肯定赢,否则第二个人肯定赢。

最后一个操作的是第二个人的话同理。

代码

CF1419B Stairs

很明显只有当 \(n=2^k-1\) 的时候 \(n\) 级的阶梯才会是好的,然后从小到大枚举一下就好了。

代码

CF1419C Killjoy

注意到答案只有可能为 \(0,1,2\)。

答案为 \(0\) 的话很好判断,答案为 \(1\) 的话有两种情况:

  • 存在至少一个人与病毒的 rt 相同。那么这些人在第一场比赛之前就会被感染,于是只需要让那些没被感染的全部调成与病毒 rt 一样,被感染的那些随便改就行了。

  • 所有人的 rt 的平均值等于病毒的 rt。直接将所有人的改成病毒的 rt 就行。

其他情况答案为 \(2\),也即先操作两个人使得一个人的 rt 被改成与病毒的相同,然后第二次比赛变成上面的情形 1。

代码

CF1419D1 Sage's Birthday (easy version)

肯定是先排序然后均分成前后两组,然后前面的和后面的轮着填即可。

注意到前面的每个值一定小于后面的每个值,所以前面的最多只会有一个数不会被贡献到。

代码

CF1419D2 Sage's Birthday (hard version)

还是先排个序然后轮着放,放完了之后要重新算一遍答案。

代码

CF1419E Decryption

注意到只有当 \(n\) 为两个不同质数的积的时候答案才可能为 \(1\),否则答案为 \(0\)。

否则设 \(n=p_1^{\alpha_1}p_2^{\alpha_2}\cdots p_n^{\alpha_n}\),那么可以这么构造一个环:

首先将 \(p_1,p_2,\cdots,p_n\) 顺时针排列,然后在每个 \(p_i\) 和 \(p_{i+1}\) 中间插入 \(p_ip_{i+1}\),剩下没有被选中的因子就放到最小质因子右边就好了。

代码和题解给出的构造方案稍微有点不同。

代码

CF1419F Rain of Fire

题解

1418

这场根本没打。

CF1418A Buying Torches

每一次交易木棍可以白嫖 \(x-1\) 个,需要白嫖的木棍至少是 \(yk+k-1\) 个,随便算就行。

代码有点迫害 syk 小鸽鸽向。

代码

CF1418B Negative Prefixes

贪心很显然,将所有没被锁的数拿出来从大到小排序在一个一个塞回去就好了。

代码

CF1418C Mortal Kombat Tower

不会贪心,只能 DP。

设 \(f_i\) 为打到了第 \(i\) 个,最后一个是自己打的的答案,\(g_i\) 为打到了第 \(i\) 个,最后一个是朋友打的答案,那么有如下转移:

\[f_i=\min(g_{i-1},g_{i-2})
\]

\[g_i=\min(f_{i-1}+a_i,f_{i-2}+a_{i-1}+a_i)
\]

然后注意一下初值就好了。

代码

CF1418D Trash Problem

题解

1420

赛场上只做到 D。

CF1420A Cubes Sorting

会冒泡排序的都知道这个 \(\frac{n(n-1)}{2}\) 是理论的交换次数上界,然而这个上界只有在 \(a_i>a_{i+1}\) 的时候才会取到。

代码

CF1420B Rock and Lever

打个表可以发现 \(a\&b\geq a\oplus b\) 只有当 \(a\) 和 \(b\) 的二进制位数一样才会成立。

代码

所以按照二进制位开个桶然后从前往后扫一遍就好了。

CF1420C1 Pokémon Army (easy version)

这个题没有交换操作所以可以 DP。

设 \(f_i\) 表示已经取了奇数个数,最后一个取的是 \(i\) 位置上的和 \(g_i\) 表示已经取了偶数个数,最后一个取的是 \(i\) 位置上的。可以很容易写出转移方程:

\[f_i=\min\limits_{i\leq k<i}(g_k+x_i)
\]

\[g_i=\min\limits_{i\leq k<i}(f_k-x_i)
\]

在 DP 的过程中同时维护 \(f\) 和 \(g\) 的前缀最大值就可以了,还是要注意一下初值。所给代码中的 \(f\) 和 \(g\) 表示前缀最大值。

代码

CF1420C2 Pokémon Army (hard version)

题解

CF1420D Rescue Nibel!

题解

CF1420E Battle Lemmings

题解

1426

没打,赛后打了一下,大概是 70min 左右切了 6 个题。

CodeForces 题目乱做的更多相关文章

  1. BZOJ 题目乱做

    记录一点在 BZOJ 上做的题. 众所周知原 BZOJ 炸掉了,于是跑去了 HydroOJ 的 BZOJ 域上面做. 目录 P1001 [Beijing2006]狼抓兔子 P1002 [FJOI200 ...

  2. jzyz 题库 题目选做

    题库中也有很多我想不出来的模拟赛的题目.做还是必要的.做自己的题目 时间很紧 想想自己的文化课 我又没有那么强 我必须得刷. LINK:水题一道 发现是一道计数题 计数题拿高分的才是王者,但是 计数题 ...

  3. 2017国家集训队作业Atcoder题目试做

    2017国家集训队作业Atcoder题目试做 虽然远没有达到这个水平,但是据说Atcoder思维难度大,代码难度小,适合我这种不会打字的选手,所以试着做一做 不知道能做几题啊 在完全自己做出来的题前面 ...

  4. CF 题目选做

    写省选的题目对noip没什么大用 关键是 细节题或者是思考题比较重要 练思维自然是CF比较好了 把我见到的比较好的CF题放上来刷一刷. LINK:Complete the projects 就是说一个 ...

  5. 一道codeforces题目引发的差分学习

    Codeforces Round #688 (Div. 2) 题目:B. Suffix Operations 题意:给定一个长为n的数组a,你可以进行两种操作:1).后缀+1;     2)后缀-1: ...

  6. 基尔霍夫矩阵题目泛做(AD第二轮)

    题目1: SPOJ 2832 题目大意: 求一个矩阵行列式模一个数P后的值.p不一定是质数. 算法讨论: 因为有除法而且p不一定是质数,不一定有逆元,所以我们用辗转相除法. #include < ...

  7. 后缀自动机/回文自动机/AC自动机/序列自动机----各种自动机(自冻鸡) 题目泛做

    题目1 BZOJ 3676 APIO2014 回文串 算法讨论: cnt表示回文自动机上每个结点回文串出现的次数.这是回文自动机的定义考查题. #include <cstdlib> #in ...

  8. FFT与多项式、生成函数题目泛做

    题目1 COGS 很强的乘法问题 高精度乘法用FFT加速 #include <cstdlib> #include <iostream> #include <algorit ...

  9. 二维计算几何基础题目泛做(SYX第一轮)

    题目1: POJ 2318 TOYS 题目大意: 给一个有n个挡板的盒子,从左到右空格编号为0...n.有好多玩具,问每个玩具在哪个空格里面. 算法讨论: 直接叉积判断就可以.注意在盒子的边界上面也算 ...

随机推荐

  1. Kafka 【的这些原理你知道吗】

    如果只是为了开发 Kafka 应用程序,或者只是在生产环境使用 Kafka,那么了解 Kafka 的内部工作原理不是必须的.不过,了解 Kafka 的内部工作原理有助于理解 Kafka 的行为,也利用 ...

  2. Centos-移动文件或目录-mv

    mv 移动文件或者目录,可以用重命名文件或者目录 相关选项 -i 如果文件或目录存在询问是否覆盖,输入y确认,输入n取消 -f 不提示,覆盖

  3. 【Python】数字与运算符

    数据类型与运算符 数字 / 浮点除 // 整数除 ** 乘方 多种混合类型运算数的运算会把整数转换为浮点数 除了 int 和 float,Python也支持其他类型的数字,例如 Decimal 或者 ...

  4. 010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二——变量类型——即Java中的数据类型

    010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二--变量类型--即Java中的数据类型 Java中变量的三要素 变量名 变 ...

  5. Jmeter5.3源码编译

    下载源码 https://jmeter.apache.org/download_jmeter.cgi 配置网络环境(重要) 下载 Proxifier 配置上网条件 导入Idea 通过 Idea 的 O ...

  6. devops-jenkins-Pipeline实战

    1) 配置gitlab的分支项目 点击红色标记的创建 project 项目 点击Create project创建Pipeline-demo项目 项目创建完成,然后我们创建一个Add README 然后 ...

  7. JavaScript高级程序设计(第4版)pdf 电子书

    JavaScript高级程序设计(第4版)pdf 电子书 免责声明:JavaScript高级程序设计(第4版)pdf 电子书下载 高清收集于网络,请勿商用,仅供个人学习使用,请尊重版权,购买正版书籍. ...

  8. 多测师讲解selenium__论坛验证码_处理方法_ 高级讲师肖sir

    1.登录我们搭建的论坛环境 2. 3. 4.

  9. swoft 使用协程 初试

    控制器访问 /hi /** * @Swoft\Bean\Annotation\Mapping\Inject("UserService") * @var UserService */ ...

  10. java 调用WebService【转】

    1.客户单编程方式(和第一种方式一样) //文件名:HelloService.java import javax.jws.WebMethod; import javax.jws.WebParam; i ...