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

【每日一题】LeetCode 799. 香槟塔

Link

我们把玻璃杯摆成金字塔的形状,其中第一层有 \(1\) 个玻璃杯,第二层有 \(2\) 个,依次类推到第 \(100\) 层,每个玻璃杯将盛有香槟。

从顶层的第一个玻璃杯开始倾倒一些香槟,当顶层的杯子满了,任何溢出的香槟都会立刻等流量的流向左右两侧的玻璃杯。当左右两边的杯子也满了,就会等流量的流向它们左右两边的杯子,依次类推。(当最底层的玻璃杯满了,香槟会流到地板上)

现在当倾倒了非负整数杯香槟后,返回第 \(i\)\(j\) 个玻璃杯所盛放的香槟占玻璃杯容积的比例( \(i\)\(j\) 都从 \(0\) 开始)。

实现 double champagneTower(int poured, int query_row, int query_glass);,其中 poured 代表倾倒的香槟杯数,query_row 代表询问的玻璃杯行的编号,query_glass 代表询问的玻璃杯处于该行的编号。

保证倾倒香槟杯数不超过 \(10^9\),询问杯子的行编号不超过 \(100\)


我们可以假定所有的杯子都是无限大的。由于行与行之间的杯子只会从高到低影响,我们可以先把所有的香槟装到 \(0\) 行的杯子,之后逐行恢复杯子的容量限制,模拟香槟向左右的杯子流动的过程。

时间复杂度 \(O(n^2)\)。利用行之间的影响是相邻的这一性质,求第 \(i\) 行的情况时,只需要知道 \(i - 1\) 行的情况,我们用滚动数组优化空间。空间复杂度 \(O(n)\)\(n\) 为行数。

AC Link

class Solution {
public:double champagneTower(int poured, int query_row, int query_glass) {vector<double> glass(1);glass[0] = poured;for (int i = 0; i < query_row; ++i) {vector<double> next_glass(i + 2);for (int j = 0; j <= i; ++j) {double r = glass[j] - 1.0;if (r > 0) {next_glass[j] += r / 2;next_glass[j + 1] += r / 2;}}glass = move(next_glass);}return min(1.0, glass[query_glass]);}
};
http://www.jsqmd.com/news/382889/

相关文章:

  • 2026年 废水脱色剂厂家推荐排行榜:印染/焦化/造纸/市政污水脱色剂,高效净水技术实力品牌深度解析 - 品牌企业推荐师(官方)
  • Nodejs+vue+ElementUI银行贷款申请审批系统
  • 2026年 防护虹吸排水系统厂家推荐排行榜:车库顶板/种植屋面/海绵城市/PDS系统,专业排水解决方案与技术创新深度解析 - 品牌企业推荐师(官方)
  • Nodejs+vue+ElementUI游乐园管理系统
  • Nodejs+vue+ElementUI羽毛球馆预约管理系统
  • 合规or出局:2026年倒计时,你的Ubuntu IoT设备准备好迎接欧盟CRA“大考”了吗?
  • Nodejs+vue+ElementUI校园闲置物品交易管理系统
  • Nodejs+vue+ElementUI校园饮品销售平台的 奶茶点餐5tq4h11m
  • 2025年终总结:码途深耕,步履不停|谁在黄金彼岸
  • IGBT MATLAB_help文档DeepSeek翻译
  • 全国新能源消纳监测预警中心标志VI及宣传册设计
  • Three-Level Bridge MATLAB_help文档DeepSeek翻译
  • 2026年 分散罐/除铁罐/成品罐/研磨罐厂家实力推荐榜:专业工艺与卓越品质的工业容器解决方案 - 品牌企业推荐师(官方)
  • 2026年最适合笔记本电脑的5款Linux发行版推荐,续航翻倍、硬件完美兼容
  • Full-Bridge MMC MATLAB_help文档DeepSeek翻译
  • 2026年防锈油厂家实力推荐榜:免清洗/硬膜/脱水/超薄层/卷板静电喷涂/长期封存/水性/环保无钡/触变性/汽相等全系列防锈油专业解析与选购指南 - 品牌企业推荐师(官方)
  • 从服务器到桌面超算:当3999美元的NVIDIA DGX Spark装上Ubuntu,普通开发者能玩出什么花?
  • 2026年 兼容性测试服务商推荐榜:H5/海外/浏览器/小程序/车载/IoT/智能硬件/Android云真机/云测试/智能设备配网测试,全方位覆盖与精准调试解决方案 - 品牌企业推荐师(官方)
  • 林琼科技:凭借 AI 之力赋能企业全链路数字化转型 - 中媒介
  • IGBT_Diode MATLAB_help文档DeepSeek翻译
  • 汇总1
  • Thyristor MATLAB_help文档DeepSeek翻译
  • Diode MATLAB_help文档DeepSeek翻译
  • Universal Bridge MATLAB_help文档DeepSeek翻译
  • GTO MATLAB_help文档DeepSeek翻译
  • TCP/IP 邮件
  • 2026年 成型刀厂家推荐排行榜:焊刀片/镶PCD/MCD/CBN/槽刀/镗刀/沟槽/可拆卸反刮成型刀,高效精密加工利器精选 - 品牌企业推荐师(官方)
  • Mosfet MATLAB_help文档DeepSeek翻译
  • 详细介绍:Java广播 —如何利用广播做服务发现
  • 汇总2