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

[CF848D] Shake It!

\(f(i, j)\)\(S \to T\) 除去 \(S, T\)\(i\) 个点,最大流为 \(j\) 的方案数。

\(g(i, j)\)\(S \to U \to T\) 除去 \(S, T\)\(i\) 个点,最大流为 \(j\) 的方案数。

\(f\)\(g\) 转移:\(f(a, b) \times f(c, d) \to g(a + c + 1, \min(b, d))\)

当前 \(a + c + 1\),DP 计算整一行,枚举 \(a\) 确定 \(c\),枚举 \(b, d\)。单行计算 \(O(n^3)\),总共 \(O(n^4)\)

\(g\)\(f\) 转移需要按顺序转移,否则会算重。

对于同一个 \(g(c, d) = x\),假设选了 \(k\) 次,相当于 \(k\) 个不区分的小球放入 \(x\) 个有区分的容器,可以不放,可以放多个,贡献为 \(\binom{x+k-1}{k}\)

因为算 \(g\) 的时候,只需要上一行的 \(f\)。用这一行的 \(g\) 直接去更新这一行以及后面的 \(f\),此后当前行的 \(f\) 就被确定了。

有效的 \((i, j, k)\)\(O(n^2)\) 的(官解声称是 \(O(n^2\log n)\)),那么这一部分也是 \(O(n^4)\) 的。

\[\sum_{i = 1}^n \sum_{j = 1}^n \lfloor\min(n / i, n / j)\rfloor = \sum_{k = 1}^n \sum_{i = 1}^n \sum_{j = 1}^n [n / i \ge k][n / j \ge k] = \sum_{k=1}^n \lfloor n/k \rfloor^2 = O(n^2) \]

初始 \(f(0, 1) = 1\)。注意 \(f\) 的第二维最大可以是 \(n + 1\)

http://www.wxhsa.cn/company.asp?id=6513

相关文章:

  • 国产化Excel开发组件Spire.XLS教程:使用 Python 设置 Excel 格式,从基础到专业应用
  • 计算机辅助筛选抗菌/抗病毒肽:以SARS-CoV-2为例,解析靶标突破与筛选策略
  • c++国外学习视频心得4-opengl
  • LOJ #3835. 「IOI2022」千岛 题解
  • (附源码)高校拼车管理系统的设计与实现 - 实践
  • Ubuntu取消vim自动对齐
  • AI产品测试学习路径全解析:从业务场景到代码实践
  • 代码随想录算法训练营第一天 | leetcode 704 27 977
  • 中文医学基准测试题库数据集:28万条标准化JSON格式医师考试题目与临床案例分析,覆盖28个医学专业领域,用于医学AI模型训练、临床决策支持系统开发、医学知识问答系统构建、医学教育辅助工具优化
  • 函数计算的云上计费演进:从请求驱动到价值驱动,助力企业走向 AI 时代
  • 【SPIE出版】第五届计算机图形学、人工智能与数据处理国际学术会议
  • 快速边缘块稀疏贝叶斯学习MATLAB实现
  • Kubernetes概述与部署
  • XXII Open Cup : Grand Prix of Southeastern Europe
  • GNSS终端授时方式
  • SpringAI接入DeepSeek大模型实现流式对话
  • 通知语音播报功能,解锁全新体验
  • 使用AI容器镜像部署Qwen大语言模型
  • 【IEEE冠名,香港中文大学(深圳)主办)第五届IEEE能源工程与电力系统国际学术会议(IEEE-EEPS 2025)
  • C#实现Access表格自增ID的重置
  • 运用深度学习模型实现图像的分类
  • 设备ONVIF接入平台EasyCVR私有化视频平台级联到海康平台目录丢失根因定位
  • java 通过模板输出word
  • 【设计模式】单例模式 - 实践
  • ubuntu服务器docker容器启动java项目
  • 【2025最新】企业信息模糊搜索API设计与实践指南
  • 一键搞定本土认证难题,AnalyticDB版Supabase助力AI应用实现支付宝微信登录
  • sumifs根据条件求和
  • ubuntu服务器docker安装部署ngix
  • c++右值引用和移动语义