LeetCode 808. 分汤
admin
2024-02-05 05:29:33
0

这个题读明白题后大概就有思路了,模拟,可以递归也可以使用动态规划来模拟分汤的过程。

但这个题的难点在对于数据的处理,不然非常容易超时

我们可以发现每次处理分出去的为25的倍数,因此可以对n除以25向上取整,求出n可以分出几份。这样减少了数据规模。

还有一个难点在于,对于当汤的数量非常大的时候,概率会无限接近于1,而题目又表明

返回值在正确答案 10−510^{-5}10−5 的范围内将被认为是正确的。

因此可以求出来当n大于某个数的时候,与1的差将小于10−510^{-5}10−5此时可以直接返回1。通过测试可以得出

n=4475,p≈0.999990211307
n=4476,p≈0.999990468596

因此n≥179×25时,可以直接返回1


记忆化递归

class Solution {
public:vector> f;double func(int a, int b){if(a <= 0 && b > 0)return 1;if(a <= 0 && b <= 0)return 0.5;if(a > 0 && b <= 0)return 0;if(f[a][b] != 0)return f[a][b];double sum = 0;sum += func(a - 4, b);sum += func(a - 3, b - 1);sum += func(a - 2, b - 2);sum += func(a - 1, b - 3);sum *= 0.25;f[a][b] = sum;return sum;}double soupServings(int n) {if(n % 25 == 0)n = n / 25;elsen = n / 25 + 1;if(n >= 179)return 1;f = vector>(n + 1, vector(n + 1, 0));return func(n, n);}
};

动态规划

class Solution {
public:double soupServings(int n) {if(n % 25 == 0)n = n / 25;elsen = n / 25 + 1;if(n >= 179)return 1.0;vector> dp(n + 1, vector(n + 1, 0));for(int i = 0; i < n + 1; i++)dp[0][i] = 1;dp[0][0] = 0.5;for(int i = 1; i < n + 1; i++){for(int j = 1; j < n + 1; j++){double sum = 0;sum += dp[max(i - 4, 0)][max(j, 0)];sum += dp[max(i - 3, 0)][max(j - 1, 0)];sum += dp[max(i - 2, 0)][max(j - 2, 0)];sum += dp[max(i - 1, 0)][max(j - 3, 0)];dp[i][j] = 0.25 * sum;}}return dp[n][n];}
};

相关内容

热门资讯

放羊的星星中所有的歌曲叫什么名... 放羊的星星中所有的歌曲叫什么名字01极速爱情-李雅微02对望-林志颖03paradise-李雅微04...
MAS曳步舞 是什么意思? MAS曳步舞 是什么意思?是一种风格,巴西风格的马来西亚风格
死神是神还是鬼脑筋急转弯 死神是神还是鬼脑筋急转弯鬼。死神是地狱的使者,说他是鬼不恰当,说他是神又没到那境界,但是说白了他就是...
科学练习册(牛津上海版)七年级... 科学练习册(牛津上海版)七年级上第九章电力与电信答案跪求啊~~17~36 D B A C C D C...
加刘三姐对歌歌词 加刘三姐对歌歌词 “男方:什么水面打跟斗呢,什么水面起高楼呢,什么水面撑阳伞,什么水面共白头?刘三姐...
怒与什么什么的成语 怒与什么什么的成语 怒开头的成语:怒不可遏、怒火中烧、怒气冲冲、怒形于色、怒气冲天、怒火冲天、怒...
女孩,姓王,阳历2008年3月... 女孩,姓王,阳历2008年3月7日,出生时间:下午16:52分, 请高人按生辰八字起名!急 急八字:...
NO是表示没有吗? NO是表示没有吗?表示否定的意思,没有,不是,无等等。
有没有盗墓的爱情小说 最好是悲... 有没有盗墓的爱情小说 最好是悲伤的 男主很冷的那种《我不是粽子,是个杯具》言情男主有点像小哥,呆呆冷...
《基础教育研究》和《教育探索》... 《基础教育研究》和《教育探索》这两本杂志哪个好一些?这要看你需要什么了。一个是侧重基础教育应用性。一...
店铺歇业语怎么写 店铺歇业语怎么写快回家过年了…小吃店歇业了…怎么写歇业语新年将至,正味餐饮谨此向大家致以新春的问候,...
不倾城不倾国是什么意思? 不倾城不倾国是什么意思?倾国倾城说的是女人长得好看;不倾国不倾城就是说长得不好看!意思就是长的不好看...
忏悔文全文 忏悔文全文往昔所造诸恶业皆由无始贪嗔痴从身语意之所生一切我今皆忏悔我今悉以清净三业,遍于法界极微尘刹...
海文考研的专业课怎么样啊? 海文考研的专业课怎么样啊?请问有人上过海文专业课的辅导班吗?我实在找不到专业课资料,而专业课辅导班又...
中国北方人的平均身高是多少,南... 中国北方人的平均身高是多少,南方人的平均身高是多少在北方,多高的男生或者女生才算是高大,在南方,多高...
找一个很多年前玩过的魔兽RPG... 找一个很多年前玩过的魔兽RPG图你那个 版本太老了, 玩都玩腻味了, 推荐你玩玩 , 仙邪之战,...
谁知道方婷创立伊指爱的故事? 谁知道方婷创立伊指爱的故事?你好 听说过这个故事 自己也没真正了解过 听起来挺伤感的 下次有机会也去...
随便求几个成语加解释 随便求几个成语加解释最好是我没见过得,谁都知道的就不要了,词语也行簪缨世族 [zān yīng...
吴京到底是如何成功的呢? 吴京到底是如何成功的呢? 一个成功的作品不是看票房,而是看能影响多少人。诚然,吴京的成功,不是看他票...
谁能提供有关男生宿舍女生宿舍的... 谁能提供有关男生宿舍女生宿舍的剧本素材?情节剧《男生宿舍》、《女生宿舍》两类大家熟悉的生活题材命题。...