/*
* 算法思想:二分法
*/
long long get(long long n){
return n*(n+1)/2;
}
int arrangeCoins(int n){
int i=0, j = n, mid;
long long tmp1;
while(i<j) {
mid = i+(j-i)/2;
tmp1 = get(mid+1);
if(tmp1 > n){
j = mid;
}else if(tmp1 < n) {
i = mid + 1;
}else {
return mid+1;
}
}
return i;
}
leetcode-744. 寻找比目标字母大的最小字母-C语言
最新推荐文章于 2021-08-30 12:45:39 发布