25.11.03

news/2025/11/3 21:48:55/文章来源:https://www.cnblogs.com/LQ636721/p/19188393

AGC003E

哎我好菜怎么这个题卡半天。

首先想到可以把 \(a_i\) 单调栈干掉,然后倒着扫求出前面要重复多少次。

但是会剩下一段,需要单独做。

先不要想太复杂,考虑如何暴力,因为额外部分只关心长度和次数,因此设计一个关于这俩的递归。

考虑现在长度为 \(x\),需要乘上 \(y\),那么可以从前面找最大的 \(a_t\)\(x\) 就是若干个 \(a_t\) 和剩一段。

那么就可以拆成 \(a_t\) 多做一些次数以及新的额外部分,复杂度会发现显然是对数层递归。

底层的时候差分修改即可。

P14364

考虑一下从前往后填人,新来的过不过只取决于这个人和前面否掉的人数,感受出状态应该是 \(f(i,j)\) 表示考虑填 \(i\) 人,否了 \(j\) 人。

考虑 \(s=1\),那么新加这个人否不否取决于自身,若被否则 \(c_i\le j\),我们把 \(c_i\) 丢进桶可以知道有 \(cnt_j\) 人满足 \(c_i=j\) 以及 \(pre_j\) 人满足 \(c_i\le j\),看起来方案是 \(pre_j\)

但是这里面有些人可能已经在前面填了,因此应该是 \(pre_j-k\)\(k\) 是填入的 \(c_i\le j\) 的人数,于是我们把状态扩到 \(f(i,j,k)\)

这个时候要保持冷静,意识到两点:

  1. 每次 \(j\) 最多加一,移动时,只需考虑 \(c_i=j+1\) 中有多少人被填了。
  2. 这部分人的方案在前面算不进来,我们应该在此时枚举其个数并计算方案。

因此得到转移 \(f(i-1,j,k)\to f(i,j+1,k+l+1)\times(pre_j-k)\times\dbinom{i-k}{l}\times\dbinom{cnt_{j+1}}{l}\times l!\)

道理很好懂,剩下的什么没被否,是零然后 \(\le j\),是零然后 \(>j\) 都是容易的。

场上我给 \(j\) 减了个前面零的个数,而且 \(c_i\) 拍序而不是丢进桶里统计,导致写成了一摊给自己烧宕机了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/954932.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

win10安装neo4j-community-3.5.7-windows

win10安装neo4j-community-3.5.7-windows 1、下载neo4j-community-3.5.7-windows下载地址:https://we-yun.com/doc/neo4j/选择对应版本的文件,下载, 2、配置环境变量NEO4J_HOME D:\neo4j-community-3.5.7 Path:%NE…

工作感受月记(202511月)

2025年11月03号 月初工作第一天,也是第一周,遇事较多,全是请假半天做。 周一见同学,请假一下午,周二去上海,欢送老板会。周三回成都,约见唐老师。周六需考试,软件设计师。 今日工作事项: 1/ 与yuki进行app se…

基于Blocking queue的生产消费模型

file: BlockQueue.hpp: #pragma once #include<pthread.h> #include<cassert> #include<queue> const int maxsize=5; template<class T> class BlockQueue{ public:BlockQueue(){int n;n=pth…

React中useContext的基本使用和原理解析

React 中 useContext 的使用方法 在 React 中,useContext 是一个内置的 Hook,用于在函数组件中轻松访问 Context(全局公共状态),避免了手动逐层传递 props 的复杂性。它依赖于 Context API,通过 Provider 提供数…

JDK的安装过程

第一步:右击“此电脑”,在显示的菜单中单击“属性”,在“系统信息”中点击“高级系统设置” 第二步:在弹出的“系统属性”对话框中,选择“高级”选项卡中的“环境变量” 第三步:在弹出的对话框中,单击“系统变量…

阅读笔记0

第3章:基本工具 强调善用工具能大幅提升效率,工具是程序员的“第二双手”。文本编辑器:不止是打字,要熟练使用快捷键、自定义配置,甚至通过插件扩展功能(如代码补全、语法检查)。 ​ 版本控制:用Git等工具管理…

File文件操作

路径用//或者\ file可以代表文件也可以代表文件夹文件对象路径可以写相对路径也可以写绝对路径,相对路径默认是是从当前文件的项目名称下寻找 从javatest下找createnewfile创建完文件会返回true exist同理 调用方法都是…

越南航空数据泄露事件深度解析

2025年越南航空遭遇重大数据泄露事件,730万客户信息遭黑客组织窃取,包括邮箱、姓名、电话号码等敏感数据。本文详细分析事件经过、受影响数据类型及防护建议。越南航空数据泄露事件 事件概述 2025年10月,自称"…

P11261 [COTS 2018] 直方图 Histogram

P11261 [COTS 2018] 直方图 Histogram 题解看了这篇题解懂了的,大家也可以去看看。 以及,后来自己想出来了单调栈解法,看题解里似乎没有这个解法,所以交一发题解。题目传送门 欢迎光临我的博客 1.笛卡尔树做法 如果…

2025csp-j游记(废物版)

"生活就是在迷茫中前进" 11月1日周六考的试,周一已经有点忘了。。 DAY 初赛 j组初赛自我感觉良好,就是考完前几分钟ccf突然改代码,但只是加了个int n难绷。s组感觉自己没开智。更绝望的是隔壁班有个gesp保…

leetcode55. 跳跃游戏 45. 跳跃游戏 II

leetcode55. 跳跃游戏 45. 跳跃游戏 II55. 跳跃游戏 45. 跳跃游戏 II 我写的第一份通过的代码,问题在于重复更新浪费不少时间,内层循环可能会重复更新许多已经确定不是最优解的位置。class Solution {public int j…

个体户办理食品经营须知

非常好的问题,这两个问题都属于实际审批中高频且容易出错的关键点。下面我根据你提供的两份文件—— 📘《食品经营许可审查通则》(国家标准) 📗《山东省食品经营许可审查细则》(山东省地方标准) 为你做专业、…

redux-thunk和createAsyncThunk

你提到了一个非常有趣且常见的观点! 许多开发者确实认为,从“编写和阅读”异步逻辑的角度来看,手写 redux-thunk 的 async (dispatch) => {...} 形式,比 createAsyncThunk 更加直接和直观。⚖️ 两种异步写法的…

2025.11.3——1绿1蓝

普及+/提高 P1353 [USACO08JAN] Running S 简单DP 提高+/省选 P6880 [JOI 2020 Final] 奥运公交 / Olympic Bus T3,场切。

Next.js路由段配置选项笔记

前言 大家好,我是曦远。 本来是想发昨晚写好的 starblog 管理后台重构文章的 结果打开 blog 才发现忘记提交了😂 所以写一篇新的吧 正好最近正在大量使用 Next.js 我发现部署后的首次渲染很慢,才意识到「预热」这个…

2025.11.3 - A

今天java和数据结构,感觉挺好的。

【每日一面】实现一个深拷贝函数

基础问答 问:知道浅拷贝和深拷贝吗?为什么要用深拷贝? 答:拷贝,可以认为是赋值,对于 JavaScript 中的基础类型,如 string, number, null, boolean, undefined, symbol 等,在赋值给一个变量的时候,是直接拷贝值…

【AI说Rust 01】Rust 的学习路线

Rust 以其卓越的性能和内存安全性吸引了众多开发者。虽然它的学习曲线相对陡峭,但一份清晰的学习路线能让你事半功倍。下面这个路线图汇总了主流的学习阶段和资源,希望能帮你从零开始,逐步进阶。 flowchart LRA[Rus…

若依后端验证码实现

先去看前端的 参考详细讲解视频:https://www.bilibili.com/video/BV1HT4y1d7oA?spm_id_from=333.788.player.switch&vd_source=886219f6fb49f459fbfc8b80a8b39f3f&p=3 登录 前端请求为http://localhost/dev-…

解码LVGL事件

LVGL 事件系统 事件是 LVGL 响应用户操作(如点击、滑动)或控件状态变化的核心机制,通过 “事件绑定 - 回调函数” 实现交互逻辑。 事件核心特点多绑定支持:一个回调函数可绑定多个对象(如一个 “计数回调” 绑定两…