囚犯专题

洛谷 P1622 释放囚犯【区间dp】

原题链接:https://www.luogu.com.cn/problem/P1622 题目描述 Caima 王国中有一个奇怪的监狱,这个监狱一共有 P 个牢房,这些牢房一字排开,第 i 个紧挨着第 i+1 个(最后一个除外)。现在正好牢房是满的。 上级下发了一个释放名单,要求每天释放名单上的一个人。这可把看守们吓得不轻,因为看守们知道,现在牢房中的 P 个人,可以相互之间传话。如果某个人离

100个囚犯和灯泡C语言,求助大神:用C++ 面向对象方法解决100个囚犯1盏灯问题

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 class Prisoner { protected: static bool s_bInitialized; static bool s_bLight; static Prisoner *m_arlpPrisoners[100]; bool m_bHasTurnedOnTheLight; protected: Prisoner() : m_bHas

百囚犯问题的拓展思考

前两天在B站刷视频,刷到了百囚犯问题的视频详解,该问题由丹麦计算机科学家Peter Bro Miltersen于2003年首次提出,是经典的概率论和组合数学问题。在理解这题的思路之余,我又产生了一些新的思考。 目录 问题描述最佳策略进一步思考策略1. 全部做同样的选择策略2. 均分成两个团队,分别做同样的选择策略3. 利用差值特性的策略 数值验证总结 问题描述 在监狱中有10

P1622 释放囚犯

LOG P1622 释放囚犯 传送门(洛谷) 题目描述: 输入数据: 20 33 6 14 输出数据: 35 分析: 容易看出,每次给犯人吃肉都是一个区间,则很容易得出此题为一个区间动归 区间动归的一般模板:f[i][j]=min(f[i][j],f[i][k-1]+f[k+1][j]+…) 这里的f[i][j]是表示放出i号到j号的犯人最少给的肉,而我们找中介点k的时候,是已经