1739.放置盒子
链接:1739.放置盒子
难度:Hard
标签:贪心、数学、二分查找
简介:给你一个整数 n ,返回接触地面的盒子的 最少 可能数量。
题解 1 - cpp
- 编辑时间:2022-12-25
- 执行用时:4ms
- 内存消耗:5.9MB
- 编程语言:cpp
- 解法介绍:找规律。
class Solution {
public:
    int minimumBoxes(int n) {
        int sum = 0, cur = 1, ans = 0, prev = 0;
        while (sum + prev + cur < n) sum = sum + prev + cur, prev += cur, ans += cur++;
        return ans + comp(n - sum, cur);
    }
    int comp(int num, int cur) {
        int ans = 1;
        for (int sum = 0, i = 1; sum + i < num; i++) sum += i, ans++;
        return ans;
    }
};