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

ARC 207

image

目前打得最好的一集。

A

考虑如果 \(\le 0\) 还会减一,那么花掉的钱就是,\(1+2+\cdots +(n-1)\)。现在的问题就是,可能少花掉一些。

最多花掉 \(\mathcal{O}(n^2)\),所以考虑计数这个。发现其实,花掉的是 \(\sum_{i=1}^n \min(p_i-1,a_{p_i})\)

对于 \(\min(p_i-1,a_{p_i})=k\) 设计状态,\(dp_{i,sum,cnt}\) 为:从大到小,现在 \(k=i\),和是 \(sum\)\(cnt\) 个处理完了。

考虑转移:

  • \(\min(p_i-1,a_{p_i})=a_{p_i}=k\)。这个就是当前一些枚举选择几个。

  • \(\min(p_i-1,a_{p_i})=p_i-1=k\)。只可能 \(+1\)\(0/1\) 枚举。

可以用组合数计算出来。具体的,选择几个 \(a_i=k\) 的组合数,对应的大的 \(p\) 的组合数等。

复杂度是 \(\mathcal{O}(n^4)\),因为枚举选择个数,一共只会有 \(\mathcal{O}(n)\) 次枚举。

B

构造题,难死了。

考虑 \(n\le 5\) 构造不出来。

查看样例,发现正好不可到达的点对为 \((1,n),(2,n-1),\cdots\)。如果 \(n\) 是偶数就这个样子构造。

具体的,有一个二分图。左边是 \(1\sim n/2\),右边的是 \(n/2+1\sim n\)。对于 \(i\le n/2\),给所有的 \(j>n/2,i+j\neq n+1\) 连边。这样子是对的,因为所有连了边的右部点可以到达,所有左部点可以到达,没有连边的右部点至少要 \(3\) 次(二分图!)所以是对的。

考虑 \(n\) 是奇数:\(1+(n-1)=n\),那么留下一个 \(n\) 不能到达自己就好了。

C

比较简单。

题目相当于,把原来的序列划分成若干段,每一段的或是不下降的,最大化段数。

考虑段的或,一共只有 \(n\log n\) 种值(经典)。

\(f_x\)\(1\sim i\),现在最后一段权值是 \(x\),的最大段数。

考虑加入 \(a_{i+1}\)。有两种:

  • \(a_{i+1}\) 加入上一个段尾。直接或上,转移。

  • \(l=i+1\) 开一个新的段,要求新的段的结尾 \(r\),满足 \(l\sim r\) 的或更大。

直接枚举 \(r\) 是不行的,但是发现有第一种转移,找到一个最小的 \(r\) 就可以转移到其他的。那么二分+ST 表就可以,复杂度两个 \(\log\)

http://www.gsyq.cn/news/16474.html

相关文章:

  • 深入解析:C++:内存管理
  • [KaibaMath1001] 关于∀ε0,|a-b|ε = a=b的证明
  • 基于Web的分布式图集管理系统架构设计与实践 - 教程
  • 国庆 Day2 强基物理
  • unix/linux source 命令,其发展历程详细时间线、由来、历史背景 - 指南
  • AtCoder Regular Contest 207 (Div.1) 游记
  • 详细介绍:云原生时代 Kafka 深度实践:05性能调优与场景实战
  • 从零开始学Flink:数据输出的终极指南
  • 自然语言处理(NLP)的系统学习路径规划 - 实践
  • 【JNI】JNI基础语法
  • 从Chrome渲染器代码执行到内核:MSG_OOB漏洞分析与利用
  • US$78.85 KEYDIY KD ZB42-4 Universal Smart Remote Key 3+1 Buttons for Lexus Type 5pcs/lot
  • Python中小整数对象池、intern机制和大整数对象池
  • ctf逆向常见算法----base64
  • 02020409 EF Core基础09-一对一、多对多、EF Core基于关系的复杂查询
  • 02020503 EF Core高级03-分页查询、IQuerable底层的实现形式、DataReader、DataTable、EF Core中的异步方法
  • P2831 [NOIP 2016 提高组] 愤怒的小鸟 题解
  • MariaDB收购SkySQL增强AI与无服务器能力
  • 阿里云为何,一个邮箱绑定了两个账号 - 教程
  • 深入解析:【设计模式-3.5】结构型——装饰器模式
  • 阿爸阿爸
  • Python 数据分析与可视化实战:从数据清洗到图表呈现 - 指南
  • 【深度学习优化算法】02:凸性 - 详解
  • 调了很久的代码总结
  • 在Windows上搭建 EasyTier 公共服务器
  • ARC 207 (Div.1)
  • (转载)无人机飞行模式全面解析
  • LVS+Keepalived高可用群集 - 指南
  • uniapp 转回tabbar页面
  • JDK 离线安装