题目来源:
leetcode题目,网址:2481. 分割圆的最少切割次数 - 力扣(LeetCode)
解题思路:
当切割次数为大于 1 的奇数 2n+1 时,最多切割出 2n+1 个相等图形;当切割次数为偶数 2n 或者是 1 时,最多切割出切割次数两倍的相等图形;当切割次数为 0 时,最多切割成 1 个相等图形。
因此,若要切割出的相等图形数量为 1 ,最少切割 0 次;若要切割出的相等图形数量为奇数,至少需要切割的次数与相等图形数量相等;若要切割出的相等图形数量为偶数 2n ,至少需要切割n 次。
解题代码:
class Solution {
public int numberOfCuts(int n) {
return n%2==0 || n==1?n/2:n;
}
}
总结:
注意存在一次都不切割的特殊情况即可。
官方题解也是一样的思路。