leedcode 887. 鸡蛋掉落

 

 思路分析 : 

很经典的一个题目,附一个很棒的解题思路:https://leetcode.cn/problems/super-egg-drop/solution/887-by-ikaruga/

这个题目可以转换为 给你 k 个鸡蛋,去尝试多少次可以将 n+1 个数字试出来

当只有一个鸡蛋 t 次机会时,可以试出来 t + 1 个数

当只有一次机会时 可以试出来 2 个数

那么就有如下的解法:

代码示例:

class Solution {
public:
    int cal(int k, int t){
        if (k == 1 || t == 1) return t + 1;

        return cal(k-1, t-1) + cal(k, t-1);
    }

    int superEggDrop(int k, int n) {
        int t = 1;

        while(cal(k, t) < n + 1) t++;

        return t;
    }
};

  

posted @ 2022-07-08 14:57  楼主好菜啊  阅读(20)  评论(0编辑  收藏  举报