CF 绿蓝题做题记录

题单

最近有在经常随机一些 CF 绿蓝难度的题目,用于提升思维。这里专门开个坑,记录一下思路障碍经验什么的。

自然这些内容也在每天本来的做题记录中就有记录,只不过这里只是把它集合在一起罢了。


CF1438D Powerful Ksenia - 洛谷(同步于 2022.6.14 每日做题记录)

CF 的题似乎总是要善于猜结论。

  1. 思路分析:

    首先考虑一次操作可以做什么:

    1. 将任意三个不同的数变成相等的一个数;

    2. 如果三个数中有两个相等,那么相当于把前两个相等的数变成与第三个数相等的数。

    分类讨论。

    • 当 \(n\) 为奇数时,一定可以构造出一组解:

      对于序列里除了一个数 \(a_p\) 之外,其它剩下的所有数均能两两配对,使得原序列变成:\((a,a,b,b,c,c,\cdots,k,k,a_p)\)。那么将 \(a_p\) 分别于前面的每一对相等的数匹配,就可以得到新的全为 \(a_p\) 的序列。

      操作次数 \(n-2\) 次。

    • 当 \(n\) 为偶数时,如果是有解的,且数列长度为偶数,那么最后整个数列的异或和一定为 0。

      在有解情况下,可以先把前 \(n-1\) 个数用奇数的方法求解。

      由于异或和为 0,所以最后一个数一定也与前面的数相等。

      操作次数 \(n-3\) 次。

  2. 障碍:

    完全没有想到分类讨论,所以通过这道题积累了一个经验,遇到这种无从下手的题可以从 \(n\) 的奇偶角度分类讨论,也可以从 \(n\) 比较小的情况讨论找规律。


CF1133F1 Spanning Tree with Maximum Degree - 洛谷(同步于 2022.6.15 每日做题记录)

  1. 题意叙述:

    给出了一个由 \(n\) 个顶点和 \(m\) 条边组成的无向无权连通图。它保证在给定的图中没有自环或重边。

    需要找到这个图的一棵生成树,使得树上顶点的最大度数尽可能地大。

    输出构造方案。

  2. 障碍:

    • 走到了一个误区中,刚开始一直想通过二分解决。主要是因为题目中:

      使得树上顶点的最大度数尽可能地大。

      看起来非常像二分对应题目特征的“最大值最小”或者“最小值最大”的情况。

      但其实这里求得是“最大值最大”。所以二分是不可行的。

    • 在用“类 Kruskal” 求解时,没有想到要标记最大位置,以为是对所有的度数为最大值的点无脑加一遍边。

  3. 思路分析:

    看到:

    使得树上顶点的最大度数尽可能地大。

    应该想到贪心。

    看到"生成树",应该想到 Kruskal。

    考虑如何将这两个结合起来。

    要使得树上顶点的最大度数尽可能大,可以考虑首先将度数最大的节点加进生成树中,最好情况下是将度数最大的点所有边也加入到生成树中去。由于我们是贪心,那就先无脑把度数最大点的所有边加入生成树中。

    然后无脑加边,直到所有节点都在树上(可以用 Kruskal),即构成一棵生成树即可。


CF525D Arthur and Walls - 洛谷(同步于 2022.6.17 做题记录)

  1. 题意概述

    给出一个 \(n \times m\) 的矩阵,里面有“\(*\)”和“.”两种符号,要求把最少的“\(*\)”变成“.”,使得“.”的联通块构成一个矩形。求最少需要变几个“\(*\)”。

  2. 障碍

    刚开始看到这道题第一眼思路是,

    对于一个"\(*\)",如果它所在的行和列上下左右都有“.”,那么这个位置就要被变为"."。

    那么只要遇到"."直接标记所在行和列然后判断一下即可。

    但这样做实际上连第二个样例都过不去。(我还写了半天代码直到测样例的时候才发现做法假了)。

    然后就一直卡在什么情况下才能变成矩形这个瓶颈上。。

  3. 思路分析

    实际上经过观察(瞪眼)可以发现只有以下四种情况可以被改变成矩形:

    *.  .*  ..  ..
    ..  ..  .*  *.

    那么我们直接从一个是"\(*\)"向八个方向 dfs,只要是这四种情况中的一种,就把这个位置变成"."即可。

    那么为什么要 dfs 呢,我们直接判断一下然后把这个位置改了不就行了?

    但是你在改这个位置的时候有可能会使得其它位置的情况发生改变,对于其它位置产生新的情况,所以必须向八个位置 dfs。

    这是一道很巧妙的题目,虽然说想出来之后发现蓝题可能有点恶评,但是这道题思维含量还是很足的。



CF839B Game of the Rows - 洛谷(同步于 2022.6.20 做题记录)

  1. 障碍:《看错题看错俩小时》

  2. 题意概述:

    现在有 \(K\) 个队,飞机有 \(N\) 排座位,每排能坐 8 个人,不同队伍的人不能坐相邻的位置。

    相邻情况有 5 种 \((1,2),(3,4),(4,5),(5,6),(7,8)\)。请问这 \(n\) 排座位是否够坐。

    (K 个队的总人数小于 \(8⋅N\))

  3. 思路分析:

    考虑一个贪心策略。

    先考虑用四人座,四人座用完再用两人座,最后考虑单人座。

    多余的四人座也先用于双人座,再考虑单人座。

    这是显然的,因为如果四人座用不完只能用来当做单人座或者双人座,显然不划算。

    双人座同理。

  4. 写挂了的地方:

    每次查找度数最大点时,要标记其位置。不能无脑将所有度数最大点的所有边都加入到生成树中去,这样可能导致构不成生成树。所以我们只要加其中一个度数最大点的所有边即可。

CF 绿蓝题做题记录相关推荐

  1. 软考大题做题技巧——数据流图、数据库E-R图、UML、算法、设计模式(干货!)

    小编在软考最后一周,破釜沉舟的学习软考的大题,找到了一些大题的做题技巧,特此分享给大家,希望所有参加软考的同学都能尽自己百分百的努力,收获最好的结果. 做题时可以重点找一下每类问题考察的考点以及提问问 ...

  2. 软考之下午题做题技巧

    距离5月25日的软考还有2天时间,考试前的状态尤为重要.上午题虽然很零散,但是很简单,下午题虽然就5道,但是做题时需要认真.认真再认真,答案题中找,好好读题,说不定算法都能懵对几分-- 做题的时候,要 ...

  3. 蓝桥杯嵌入式第十三届模拟题做题笔记

    这届的蓝桥杯电子类延期了,最近就很无聊,想做点东西但是又什么啥也不会,five一个 在小破站寻求各路大佬的帮助 不求大家的赞了,只希望大家能够分享知识,帮助一下迷茫的人   首先第一眼看到这个题确实是 ...

  4. CTF杂项题做题思路

    一.文件隐写 1. file命令 当文件没有后缀或者有后缀无法正常打开,根据识别出的文件类型,来修改后缀即可 格式:file myheat 2. winhex 3. 文件头缺失 一种是文件头残缺,另一 ...

  5. 雅思听力匹配题做题技巧

  6. 系统架构设计师(截图+做题思路+目录)

    目录 文章目录 目录 系统架构设计师考试介绍 计算机组成与体系结构 计算机体系结构分类-Flkynn CISC与RISC的区别 层次化存储结构 Cache 局部性原理 主存-分类 磁盘结构与参数 磁盘 ...

  7. 2022年 CSP-J1 CSP-S1 初赛 如何进行复习 如何做题

    第一题 单选题: 这个包含了2018年及以前年份的的单选或不定项选择(提高组 初赛) 以及问题求解题等考点 这一部分建议直接做历年的真题就可以了,至少要做最近的5年真题 做题的顺序:由最近往前做,也就 ...

  8. 专升本英语——应试题型突破——阅读理解——阅读理解做题技巧【学习笔记】

    全部知识点请进入:专升本英语--学习笔记[知识点全轻松学习]!!! https://blog.csdn.net/liu17234050/article/details/104576823 目录: 一: ...

  9. 托福阅读考试做题步骤

    掌握了托福阅读的做题技巧,就一定可以拿到高分吗?那可未必.正确的托福阅读考试做题步骤可以使你更加从容的应对整场考试.zhasite托福小编详细讲解有关托福阅读考试的做题步骤. 每篇托福阅读文章的题目基 ...

最新文章

  1. Win7旗舰版系统右键菜单响应速度很慢会延迟一段时间
  2. hdu 5199 Gunner(STL之map,水)
  3. openstack中的server
  4. 转:SCI、EI和ISTP收录号的查询方法
  5. Effective Java之用EnumSet代替位域(三十二)
  6. RabbitMq、ActiveMq、ZeroMq、kafka之间的比较,资料汇总
  7. android.hardware.Camera类及其标准接口介绍
  8. (50)常见命名方式
  9. JDK自带的Timer类
  10. 语音识别算法阅读之CTC
  11. 安装完office没有图标_很多人不会设置路由器?只因没有弄懂安装顺序,看完你就会了...
  12. Tracepro——解决辐照度图中关键区域对比度不明显问题
  13. getMonthsetMonth方法
  14. 软路由服务器安装在哪个位置,软路由安装教程_软路由安装注意事项
  15. 编译可在Android上运行的依赖库(二):gettext库
  16. 360 android框架,360 董福源 - Android框架虚拟化实战.pdf
  17. <华为VRP系统>ENSP模拟器安装:
  18. 来了小老弟,送40本技术畅销书!
  19. Java之-MyBatis
  20. java对es做聚合查询_java操作elasticsearch实现聚合查询

热门文章

  1. 修改(My)Eclipse默认的Servlet和jsp代码模板
  2. 湖北档案管理要求,发现档案管理系统也是很重要部分
  3. 22、Camunda 补偿事件、事务子流程、分布式事务一致性
  4. uni-app下拉刷新、上拉加载更多实现
  5. %@ Application Codebehind=Global.asax.cs Inherits=XXX.MvcApplication Language=C# %
  6. WIN32 MENU
  7. 【华人学者风采】夏幼南 乔治亚理工学院
  8. 大前端面试经验技巧通用模板
  9. SpringBoot - Post请求-接收参数
  10. 041 特殊的完全平方数