Update 14. 剪绳子.md

示例代码块的语言标注改为 text,第一人称改为客观陈述。
This commit is contained in:
CyC2018
2026-10-28 22:51:14 +08:00
parent ec892ed144
commit f5c6281fe0
+2 -2
View File
@@ -8,7 +8,7 @@
把一根绳子剪成多段,并且使得每段的长度乘积最大。
```html
```text
n = 2
return 1 (2 = 1 + 1)
@@ -34,7 +34,7 @@ return 36 (10 = 3 + 3 + 4)
将绳子拆成 6 和 n-6,因为 6=3+3,而 6\<3\*3,所以不能出现 6 的绳子,而是拆成 3 和 3。这里 6 同样可以拆成 6=2+2+2,但是 3(n - 3) - 2(n - 2) = n - 5 \>= 0,在 n\>=5 的情况下将绳子拆成 3 比拆成 2 效果更好。
继续拆成更大的绳子可以发现都比拆成 2 和 3 的效果更差,因此我们只考虑将绳子拆成 2 和 3,并且优先拆成 3,当拆到绳子长度 n 等于 4 时,也就是出现 3+1,此时只能拆成 2+2。
继续拆成更大的绳子可以发现都比拆成 2 和 3 的效果更差,因此只考虑将绳子拆成 2 和 3,并且优先拆成 3,当拆到绳子长度 n 等于 4 时,也就是出现 3+1,此时只能拆成 2+2。
```java
public int cuttingBamboo(int bamboo_len) {