当前位置: 首页 > news >正文

CF Round 997 记录 题解 (div. 2 A - E)

今天(P.S. 其实是很久以前)上午VP CodeForces Round 997 (Div. 2)。

  • [CodeForces 2056A] Shape Perimeter

    计算重叠部分即可。

  • [CodeForces 2056B] Find the Permutation

    我们总是建从小节点到大节点的有向边,对这个DAG进行拓扑排序。因为我们有时并不想让一个小节点往大节点连边,所以用堆维护入度为零的点即可。(可恶,赛时多测不清空卡了我一发。)

  • [CodeForces 2056C] Palindromic Subsequences

    玄学的构造题。我们希望大概长这样的结构:

    1 , 1 , 1 , … , 1 , ⏟ a 个 1 2 , 3 , 4 , … , a + 3 , 1 , 1 , 1 , … , 1 ⏟ a − 1 个 1 \underbrace{1,\ 1,\ 1,\ \dots,\ 1,}_{a个1}\ 2,\ 3,\ 4,\ \dots, a + 3,\ \underbrace{1,\ 1,\ 1,\ \dots,\ 1}_{a-1个1} a1 1, 1, 1, , 1, 2, 3, 4, ,a+3, a11 1, 1, 1, , 1

    这样构造出的答案有 a ( a + 2 ) + 1 = a 2 a(a + 2) + 1 = a^2 a(a+2)+1=a2 个,可以通过。稍微分讨一下即可。

    赛后看了一下题解,发现自己好唐:

    1 , 2 , 3 , … , n − 2 , 1 , 2 1,\ 2,\ 3,\ \dots,\ n-2, \ 1,\ 2 1, 2, 3, , n2, 1, 2

  • [CodeForces 2056D] Unique Median

    又是一道正难则反,计算坏的序列的个数。这道题的trick挺巧妙的,但没接触过,确实想不出来。发现长度为奇数的序列一定不是坏的,所以只考虑偶数长度序列。对于一个序列的中位数 x x x,将序列中 ≤ x \le x x 的数化为 − 1 -1 1,其它的化为 1 1 1。若最终区间和为 0 0 0,那么这个序列就是坏的。另外要注意去重。维护前缀和即可。

  • [CodeForces 2056E] Nested Segments

    组合数学。这个包含或不交的关系恰好和昨天的B差不多。我们想要尽可能多的节点数量,那么需要构造成二叉树。(这里具体不想证明。)对于某一个节点,设其儿子数量为 c n t u cnt_u cntu,则计算 ∏ C c n t u − 1 \prod C_{cnt_u - 1} Ccntu1(卡特兰数)即可。


http://www.mrgr.cn/news/90468.html

相关文章:

  • 新数据结构(7)——Object
  • 小游戏源码开发之可跨app软件对接是如何设计和开发的
  • Maven 版本管理与 SNAPSHOT 详解
  • TCP/IP 协议图解 | TCP 协议详解 | IP 协议详解
  • 【Reverse】一道题认识花指令
  • 细读 React | React Router 路由切换原理
  • PyQt学习记录03——批量设置水印
  • 算法很美笔记(Java)——树
  • package.json 文件配置
  • 华为云kubernetes基于keda自动伸缩deployment副本(监听redis队列长度)
  • python 获取smpl身高 fbx身高
  • 如何使用Java语言在Idea和Android中分别建立服务端和客户端实现局域网聊天
  • Android 14.0 Launcher3单层模式workspace中app列表页排序功能实现
  • @synchronized的使用
  • 使用 Express 写接口
  • 自己部署DeepSeek 助力 Vue 开发:打造丝滑的标签页(Tabs)
  • 通过钉钉创建个人AI助理:无需官网即可使用DeepSeek满血版全攻略
  • [极客大挑战 2019]PHP
  • 【竞技宝】LOL-LPL:EDG3-0零封LNG
  • 图神经网络怎么和LLM结合
  • 前端如何判断浏览器 AdBlock/AdBlock Plus(最新版)广告屏蔽插件已开启拦截
  • 使用EVE-NG-锐捷实现ACL访问控制
  • C++ 设计模式-桥接模式
  • QML的属性绑定
  • 【第三节】CMake 的构建流程
  • 自己部署 DeepSeek 助力 Vue 开发:打造丝滑的折叠面板(Accordion)