程式語言 - LeetCode - C++ - 441. Arranging Coins



題目:


解答:

class Solution {
public:
    int arrangeCoins(int n) {
        long long l = 0;
        long long r = n;

        while (l <= r) {
            long long m = l + ((r - l) >> 1);
            long long c = (m * (m + 1)) >> 1;

            if (c <= n) {
                l = m + 1;
            }
            else {
                r = m - 1;
            }
        }

        return r;
    }
};