Refact.ai Match 1 (Codeforces Round 985, Div. 1 + Div. 2)
A
Easy math problem.
B
大胆贪心猜结论,容易想到一个套路化的 stack 做法。
C
容易想到是个二分题,二分答案 \(k\) 表示答案能否 \(\geq k\)。
统计一下前缀最大然后 \(O(n)\) 的写一个 check 就可以了。
D
构造题,好题但是思路比较套路。
考虑这种构造题我们一般会怎么写,当然是往题目要求的方向去考虑:空图或者树。
- 空图显然局限性比较大,与之相应的限制也更多,手玩一下不难发现还会出现无法构造的情况。
- 那就尝试构造树,又有不同的两个思路了:
- 考虑删减边的数量,因为我们知道树最多也只有 \(n - 1\) 条边,不需要太多
- 考虑构造特殊树
往 \(2.2\) 的思路去考虑比较符合直觉,因为特殊情形比较好构造。
分三步走:
- 找到所有度数不小于 \(2\) 的点将其和另外两个相邻的点进行操作(边的数量会刚好 \(-1\)),知道整张图只剩下散点(\(\circ\))和散块(\(\circ \longleftrightarrow \circ\))
- 若散块个数 \(\gt 1\),从中任选两个,再从两个散块中任选三个点操作,这样我们就 merge 了两个散块
- 如果有剩余的散块,选择散块的两个顶点和树根,进行 merge
- 对于散点,选择树根、与树根相邻一点、散点进行 merge,直到没有散点
多画图。
操作数 \(S \leq m - 1 + n - 1 = m + n - 2 \leq 2 \times \max(n, m)\)。
E
挺有意思的,思路比较好想。
以 \(2\) 为 base 可以生成所有合数,如果是偶数就一直 \(+ 2\),否则减去其最小的质因子(先预处理好),就能将其变为偶数。而素数显然只能由本身来生成。
所以若 \(cnt_{i \in \mathbb{P}} \geq 2\),报告无解。
若只剩下一个质数 \(p\),对其翻倍就能得到一个质因子 \(2\),若偶数 \(\lt 2p\) 就无解,或者奇数(合数)减去其最小质因子 \(\lt 2p\) 也无解。
Refact.ai Match 1 (Codeforces Round 985, Div. 1 + Div. 2)的更多相关文章
- Codeforces Educational Codeforces Round 44 (Rated for Div. 2) E. Pencils and Boxes
Codeforces Educational Codeforces Round 44 (Rated for Div. 2) E. Pencils and Boxes 题目连接: http://code ...
- Educational Codeforces Round 43 (Rated for Div. 2)
Educational Codeforces Round 43 (Rated for Div. 2) https://codeforces.com/contest/976 A #include< ...
- Codeforces Educational Codeforces Round 44 (Rated for Div. 2) F. Isomorphic Strings
Codeforces Educational Codeforces Round 44 (Rated for Div. 2) F. Isomorphic Strings 题目连接: http://cod ...
- Educational Codeforces Round 64 (Rated for Div. 2)题解
Educational Codeforces Round 64 (Rated for Div. 2)题解 题目链接 A. Inscribed Figures 水题,但是坑了很多人.需要注意以下就是正方 ...
- Educational Codeforces Round 53 (Rated for Div. 2) (前五题题解)
这场比赛没有打,后来补了一下,第五题数位dp好不容易才搞出来(我太菜啊). 比赛传送门:http://codeforces.com/contest/1073 A. Diverse Substring ...
- [Educational Codeforces Round 81 (Rated for Div. 2)]E. Permutation Separation(线段树,思维,前缀和)
[Educational Codeforces Round 81 (Rated for Div. 2)]E. Permutation Separation(线段树,思维,前缀和) E. Permuta ...
- Educational Codeforces Round 60 (Rated for Div. 2) - C. Magic Ship
Problem Educational Codeforces Round 60 (Rated for Div. 2) - C. Magic Ship Time Limit: 2000 mSec P ...
- Educational Codeforces Round 60 (Rated for Div. 2) - D. Magic Gems(动态规划+矩阵快速幂)
Problem Educational Codeforces Round 60 (Rated for Div. 2) - D. Magic Gems Time Limit: 3000 mSec P ...
- Educational Codeforces Round 35 (Rated for Div. 2)
Educational Codeforces Round 35 (Rated for Div. 2) https://codeforces.com/contest/911 A 模拟 #include& ...
- Educational Codeforces Round 63 (Rated for Div. 2) 题解
Educational Codeforces Round 63 (Rated for Div. 2)题解 题目链接 A. Reverse a Substring 给出一个字符串,现在可以对这个字符串进 ...
随机推荐
- 【LLM训练系列】从零开始训练大模型之Phi2-mini-Chinese项目解读
一.前言 本文主要是在复现和实践Phi2-mini-Chinese后,简要分析下Phi2-mini-Chinese这个项目,做一个学习实战总结. 原文发布于知乎:https://zhuanlan.zh ...
- 26岁女生转行车载测试1年,月入15K~
年前有朋友找工作,跟我说简历改了车载后,收到的打招呼翻了几倍,如今车载测试前景非常广阔,因为越来越多的汽车厂商正在开发新的可智能化的汽车,他们需要测试这些汽车的性能,安全性以及可靠性.车载测试技术可以 ...
- 线段树 ----洛谷p3372
问题描述: 已知一个数列,对数列进行两种操作:1,对数列某个区间中的所有数加d:2,查询数列某区间的区间和 输入: 第一行输入两个整数n和m,分别代表数列中元素个数和对数列的操作次数,第二行输入n个用 ...
- 解锁Java线程池:实战技巧与陷阱规避
专业在线打字练习网站-巧手打字通,只输出有价值的知识. 一 前言 线程池作为初学者常感困惑的一个领域,本次"巧手打字通课堂"将深入剖析其中几个最为普遍的误区.为了更清晰地阐述这些知 ...
- UEFI原理与编程(三)
1 开发UEFI服务 本质Protocol 就是包含属性和函数指针的结构体,功能上来说就是提供者和使用者对服务的一种约定. 2 开发UEFI驱动 一个设备/总线驱动程序在安装时首要找到对应的硬件设备( ...
- Android usb广播 ACTION_USB_DEVICE_ATTACHED流程源码分析
整体流程图 大概意思就是UsbHostManager启动监控线程,monitorUsbHostBus会调用usb_host_run函数(使用inotify来监听USB设备的插拔)不停的读取bus总线, ...
- 使用BPF之前和之后生成直方图过程的对比
以bitehist为例: 使用BPF之前: 1.在内核中:开启磁盘IO事件的插桩观测. 2.在内核中,针对每个事件:向perf缓冲区写入一条记录.如果使用了跟踪点技术(推荐方式),记录中会包含关于磁盘 ...
- 墨天轮沙龙 | 北京大学李文杰:面向知识图谱应用的图数据库系统gStore
在6月8日举办的[墨天轮数据库沙龙第七期-开源生态专场]中,北京大学重庆大数据研究院图数据库与知识图谱实验室副主任.北京大学王选计算机研究所全职博士后 李文杰老师分享了<面向知识图谱应用的图数据 ...
- 怎么封装axios
首先,单独创建一个request的js文件,导入axios 然后,创建 axios 实例 request = axios.create 可以写基本地址,超时时间等: 后面可以添加拦截器,可以在请求拦截 ...
- 002 Typora 的使用(markdown 的使用)
博客配套视频链接: https://space.bilibili.com/383551518?spm_id_from=333.1007.0.0 b 站直接看 配套 github 链接:https:// ...