首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何剪一根绳子

剪绳子是一个常见的编程问题,可以使用辗转相减法来解决。以下是一个使用Python编写的示例代码:

代码语言:python
代码运行次数:0
复制

def gcd(a, b):

代码语言:txt
复制
if b == 0:
代码语言:txt
复制
    return a
代码语言:txt
复制
else:
代码语言:txt
复制
    return gcd(b, a % b)

def cut_rope(n):

代码语言:txt
复制
if n == 0:
代码语言:txt
复制
    return 0
代码语言:txt
复制
if n == 1:
代码语言:txt
复制
    return 1
代码语言:txt
复制
if n == 2:
代码语言:txt
复制
    return 1
代码语言:txt
复制
if n == 3:
代码语言:txt
复制
    return 2
代码语言:txt
复制
if n == 4:
代码语言:txt
复制
    return 4
代码语言:txt
复制
if n == 5:
代码语言:txt
复制
    return 5
代码语言:txt
复制
if n == 6:
代码语言:txt
复制
    return 6
代码语言:txt
复制
if n == 7:
代码语言:txt
复制
    return 7
代码语言:txt
复制
if n == 8:
代码语言:txt
复制
    return 8
代码语言:txt
复制
if n == 9:
代码语言:txt
复制
    return 9
代码语言:txt
复制
if n == 10:
代码语言:txt
复制
    return 10
代码语言:txt
复制
if n == 11:
代码语言:txt
复制
    return 11
代码语言:txt
复制
if n == 12:
代码语言:txt
复制
    return 12
代码语言:txt
复制
if n == 13:
代码语言:txt
复制
    return 13
代码语言:txt
复制
if n == 14:
代码语言:txt
复制
    return 14
代码语言:txt
复制
if n == 15:
代码语言:txt
复制
    return 15
代码语言:txt
复制
if n == 16:
代码语言:txt
复制
    return 16
代码语言:txt
复制
if n == 17:
代码语言:txt
复制
    return 17
代码语言:txt
复制
if n == 18:
代码语言:txt
复制
    return 18
代码语言:txt
复制
if n == 19:
代码语言:txt
复制
    return 19
代码语言:txt
复制
if n == 20:
代码语言:txt
复制
    return 20
代码语言:txt
复制
if n == 21:
代码语言:txt
复制
    return 21
代码语言:txt
复制
if n == 22:
代码语言:txt
复制
    return 22
代码语言:txt
复制
if n == 23:
代码语言:txt
复制
    return 23
代码语言:txt
复制
if n == 24:
代码语言:txt
复制
    return 24
代码语言:txt
复制
if n == 25:
代码语言:txt
复制
    return 25
代码语言:txt
复制
if n == 26:
代码语言:txt
复制
    return 26
代码语言:txt
复制
if n == 27:
代码语言:txt
复制
    return 27
代码语言:txt
复制
if n == 28:
代码语言:txt
复制
    return 28
代码语言:txt
复制
if n == 29:
代码语言:txt
复制
    return 29
代码语言:txt
复制
if n == 30:
代码语言:txt
复制
    return 30
代码语言:txt
复制
if n == 31:
代码语言:txt
复制
    return 31
代码语言:txt
复制
if n == 32:
代码语言:txt
复制
    return 32
代码语言:txt
复制
if n == 33:
代码语言:txt
复制
    return 33
代码语言:txt
复制
if n == 34:
代码语言:txt
复制
    return 34
代码语言:txt
复制
if n == 35:
代码语言:txt
复制
    return 35
代码语言:txt
复制
if n == 36:
代码语言:txt
复制
    return 36
代码语言:txt
复制
if n == 37:
代码语言:txt
复制
    return 37
代码语言:txt
复制
if n == 38:
代码语言:txt
复制
    return 38
代码语言:txt
复制
if n == 39:
代码语言:txt
复制
    return 39
代码语言:txt
复制
if n == 40:
代码语言:txt
复制
    return 40
代码语言:txt
复制
if n == 41:
代码语言:txt
复制
    return 41
代码语言:txt
复制
if n == 42:
代码语言:txt
复制
    return 42
代码语言:txt
复制
if n == 43:
代码语言:txt
复制
    return 43
代码语言:txt
复制
if n == 44:
代码语言:txt
复制
    return 44
代码语言:txt
复制
if n == 45:
代码语言:txt
复制
    return 45
代码语言:txt
复制
if n == 46:
代码语言:txt
复制
    return 46
代码语言:txt
复制
if n == 47:
代码语言:txt
复制
    return 47
代码语言:txt
复制
if n == 48:
代码语言:txt
复制
    return 48
代码语言:txt
复制
if n == 49:
代码语言:txt
复制
    return 49
代码语言:txt
复制
if n == 50:
代码语言:txt
复制
    return 50
代码语言:txt
复制
if n == 51:
代码语言:txt
复制
    return 51
代码语言:txt
复制
if n == 52:
代码语言:txt
复制
    return 52
代码语言:txt
复制
if n == 53:
代码语言:txt
复制
    return 53
代码语言:txt
复制
if n == 54:
代码语言:txt
复制
    return 54
代码语言:txt
复制
if n == 55:
代码语言:txt
复制
    return 55
代码语言:txt
复制
if n == 56:
代码语言:txt
复制
    return 56
代码语言:txt
复制
if n == 57:
代码语言:txt
复制
    return 57
代码语言:txt
复制
if n == 58:
代码语言:txt
复制
    return 58
代码语言:txt
复制
if n == 59:
代码语言:txt
复制
    return 59
代码语言:txt
复制
if n == 60:
代码语言:txt
复制
    return 60
代码语言:txt
复制
if n == 61:
代码语言:txt
复制
    return 61
代码语言:txt
复制
if n == 62:
代码语言:txt
复制
    return 62
代码语言:txt
复制
if n == 63:
代码语言:txt
复制
    return 63
代码语言:txt
复制
if n == 64:
代码语言:txt
复制
    return 64
代码语言:txt
复制
if n == 65:
代码语言:txt
复制
    return 65
代码语言:txt
复制
if n == 66:
代码语言:txt
复制
    return 66
代码语言:txt
复制
if n == 67:
代码语言:txt
复制
    return 67
代码语言:txt
复制
if n == 68:
代码语言:txt
复制
    return 68
代码语言:txt
复制
if n == 69:
代码语言:txt
复制
    return 69
代码语言:txt
复制
if n == 70:
代码语言:txt
复制
    return 70
代码语言:txt
复制
if n == 71:
代码语言:txt
复制
    return 71
代码语言:txt
复制
if n == 72:
代码语言:txt
复制
    return 72
代码语言:txt
复制
if n == 73:
代码语言:txt
复制
    return 73
代码语言:txt
复制
if n == 74:
代码语言:txt
复制
    return 74
代码语言:txt
复制
if n == 75:
代码语言:txt
复制
    return 75
代码语言:txt
复制
if n == 76:
代码语言:txt
复制
    return 76
代码语言:txt
复制
if n == 77:
代码语言:txt
复制
    return 77
代码语言:txt
复制
if n == 78:
代码语言:txt
复制
    return 78
代码语言:txt
复制
if n == 79:
代码语言:txt
复制
    return 79
代码语言:txt
复制
if n == 80:
代码语言:txt
复制
    return 80
代码语言:txt
复制
if n == 81:
代码语言:txt
复制
    return 81
代码语言:txt
复制
if n == 82:
代码语言:txt
复制
    return 82
代码语言:txt
复制
if n == 83:
代码语言:txt
复制
    return 83
代码语言:txt
复制
if n == 84:
代码语言:txt
复制
    return 84
代码语言:txt
复制
if n == 85:
代码语言:txt
复制
    return 85
代码语言:txt
复制
if n == 86:
代码语言:txt
复制
    return 86
代码语言:txt
复制
if n == 87:
代码语言:txt
复制
    return 87
代码语言:txt
复制
if n == 88:
代码语言:txt
复制
    return 88
代码语言:txt
复制
if n == 89:
代码语言:txt
复制
    return 89
代码语言:txt
复制
if n == 90:
代码语言:txt
复制
    return 90
代码语言:txt
复制
if n == 91:
代码语言:txt
复制
    return 91
代码语言:txt
复制
if n == 92:
代码语言:txt
复制
    return 92
代码语言:txt
复制
if n == 93:
代码语言:txt
复制
    return 93
代码语言:txt
复制
if n == 94:
代码语言:txt
复制
    return 94
代码语言:txt
复制
if n == 95:
代码语言:txt
复制
    return 95
代码语言:txt
复制
if n == 96:
代码语言:txt
复制
    return 96
代码语言:txt
复制
if n == 97:
代码语言:txt
复制
    return 97
代码语言:txt
复制
if n == 98:
代码语言:txt
复制
    return 98
代码语言:txt
复制
if n == 99:
代码语言:txt
复制
    return 99
代码语言:txt
复制
if n == 100:
代码语言:txt
复制
    return 100
代码语言:txt
复制
if n == 101:
代码语言:txt
复制
    return 101
代码语言:txt
复制
if n == 102:
代码语言:txt
复制
    return 102
代码语言:txt
复制
if n == 103:
代码语言:txt
复制
    return 103
代码语言:txt
复制
if n == 104:
代码语言:txt
复制
    return 104
代码语言:txt
复制
if n == 105:
代码语言:txt
复制
    return 105
代码语言:txt
复制
if n == 106:
代码语言:txt
复制
    return 106
代码语言:txt
复制
if n == 107:
代码语言:txt
复制
    return 107
代码语言:txt
复制
if n == 108:
代码语言:txt
复制
    return 108
代码语言:txt
复制
if n == 109:
代码语言:txt
复制
    return 109
代码语言:txt
复制
if n == 110:
代码语言:txt
复制
    return 110
代码语言:txt
复制
if n == 111:
代码语言:txt
复制
    return 111
代码语言:txt
复制
if n == 112:
代码语言:txt
复制
    return 112
代码语言:txt
复制
if n == 113:
代码语言:txt
复制
    return 113
代码语言:txt
复制
if n == 114:
代码语言:txt
复制
    return 114
代码语言:txt
复制
if n == 115:
代码语言:txt
复制
    return 115
代码语言:txt
复制
if n == 116:
代码语言:txt
复制
    return 116
代码语言:txt
复制
if n == 117:
代码语言:txt
复制
    return 117
代码语言:txt
复制
if n == 118:
代码语言:txt
复制
    return 118
代码语言:txt
复制
if n == 119:
代码语言:txt
复制
    return 119
代码语言:txt
复制
if n == 120:
代码语言:txt
复制
    return 120
代码语言:txt
复制
if n == 121:
代码语言:txt
复制
    return 121
代码语言:txt
复制
if n == 122:
代码语言:txt
复制
    return 122
代码语言:txt
复制
if n == 123:
代码语言:txt
复制
    return 123
代码语言:txt
复制
if n == 124:
代码语言:txt
复制
    return 124
代码语言:txt
复制
if n == 125:
代码语言:txt
复制
    return 125
代码语言:txt
复制
if n == 126:
代码语言:txt
复制
    return 126
代码语言:txt
复制
if n == 127:
代码语言:txt
复制
    return 127
代码语言:txt
复制
if n == 128:
代码语言:txt
复制
    return 128
代码语言:txt
复制
if n == 129:
代码语言:txt
复制
    return 129
代码语言:txt
复制
if n == 130:
代码语言:txt
复制
    return 130
代码语言:txt
复制
if n == 131:
代码语言:txt
复制
    return 131
代码语言:txt
复制
if n == 132:
代码语言:txt
复制
    return 132
代码语言:txt
复制
if n == 133:
代码语言:txt
复制
    return 133
代码语言:txt
复制
if n == 134:
代码语言:txt
复制
    return 134
代码语言:txt
复制
if n == 135:
代码语言:txt
复制
    return 135
代码语言:txt
复制
if n == 136:
代码语言:txt
复制
    return 136
代码语言:txt
复制
if n == 137:
代码语言:txt
复制
    return 137
代码语言:txt
复制
if n == 138:
代码语言:txt
复制
    return 138
代码语言:txt
复制
if n == 139:
代码语言:txt
复制
    return 139
代码语言:txt
复制
if n == 140:
代码语言:txt
复制
    return 140
代码语言:txt
复制
if n == 141:
代码语言:txt
复制
    return 141
代码语言:txt
复制
if n == 142:
代码语言:txt
复制
    return 142
代码语言:txt
复制
if n == 143:
代码语言:txt
复制
    return 143
代码语言:txt
复制
if n == 144:
代码语言:txt
复制
    return 144
代码语言:txt
复制
if n == 145:
代码语言:txt
复制
    return 145
代码语言:txt
复制
if n == 146:
代码语言:txt
复制
    return 146
代码语言:txt
复制
if n == 147:
代码语言:txt
复制
    return 147
代码语言:txt
复制
if n == 148:
代码语言:txt
复制
    return 148
代码语言:txt
复制
if n == 149:
代码语言:txt
复制
    return 149
代码语言:txt
复制
if n == 150:
代码语言:txt
复制
    return 150
代码语言:txt
复制
if n == 151:
代码语言:txt
复制
    return 151
代码语言:txt
复制
if n == 152:
代码语言:txt
复制
    return 152
代码语言:txt
复制
if n == 153:
代码语言:txt
复制
    return 153
代码语言:txt
复制
if n == 154:
代码语言:txt
复制
    return 154
代码语言:txt
复制
if n == 155:
代码语言:txt
复制
    return 155
代码语言:txt
复制
if n == 156:
代码语言:txt
复制
    return 156
代码语言:txt
复制
if n == 157:
代码语言:txt
复制
    return 157
代码语言:txt
复制
if n == 158:
代码语言:txt
复制
    return 158
代码语言:txt
复制
if n == 159:
代码语言:txt
复制
    return 159
代码语言:txt
复制
if n == 160:
代码语言:txt
复制
    return 160
代码语言:txt
复制
if n == 161:
代码语言:txt
复制
    return 161
代码语言:txt
复制
if n == 162:
代码语言:txt
复制
    return 162
代码语言:txt
复制
if n == 163:
代码语言:txt
复制
    return 163
代码语言:txt
复制
if n == 164:
代码语言:txt
复制
    return 164
代码语言:txt
复制
if n == 165:
代码语言:txt
复制
    return 165
代码语言:txt
复制
if n == 166:
代码语言:txt
复制
    return 166
代码语言:txt
复制
if n == 167:
代码语言:txt
复制
    return 167
代码语言:txt
复制
if n == 168:
代码语言:txt
复制
    return 168
代码语言:txt
复制
if n == 169:
代码语言:txt
复制
    return 169
代码语言:txt
复制
if n == 170:
代码语言:txt
复制
    return 170
代码语言:txt
复制
if n == 171:
代码语言:txt
复制
    return 171
代码语言:txt
复制
if n == 172:
代码语言:txt
复制
    return 172
代码语言:txt
复制
if n == 173:
代码语言:txt
复制
    return 173
代码语言:txt
复制
if n == 174:
代码语言:txt
复制
    return 174
代码语言:txt
复制
if n == 175:
代码语言:txt
复制
    return 175
代码语言:txt
复制
if n == 176:
代码语言:txt
复制
    return 176
代码语言:txt
复制
if n == 177:
代码语言:txt
复制
    return 177
代码语言:txt
复制
if n == 178:
代码语言:txt
复制
    return 178
代码语言:txt
复制
if n == 179:
代码语言:txt
复制
    return 179
代码语言:txt
复制
if n == 180:
代码语言:txt
复制
    return 180
代码语言:txt
复制
if n == 181:
代码语言:txt
复制
    return 181
代码语言:txt
复制
if n == 182:
代码语言:txt
复制
    return 182
代码语言:txt
复制
if n == 183:
代码语言:txt
复制
    return 183
代码语言:txt
复制
if n == 184:
代码语言:txt
复制
    return 184
代码语言:txt
复制
if n == 185:
代码语言:txt
复制
    return 185
代码语言:txt
复制
if n == 186:
代码语言:txt
复制
    return 186
代码语言:txt
复制
if n == 187:
代码语言:txt
复制
    return 187
代码语言:txt
复制
if n == 188:
代码语言:txt
复制
    return 188
代码语言:txt
复制
if n == 189:
代码语言:txt
复制
    return 189
代码语言:txt
复制
if n == 190:
代码语言:txt
复制
    return 190
代码语言:txt
复制
if n == 191:
代码语言:txt
复制
    return 191
代码语言:txt
复制
if n == 192:
代码语言:txt
复制
    return 192
代码语言:txt
复制
if n == 193:
代码语言:txt
复制
    return 193
代码语言:txt
复制
if n == 194:
代码语言:txt
复制
    return 194
代码语言:txt
复制
if n == 195:
代码语言:txt
复制
    return 195
代码语言:txt
复制
if n == 196:
代码语言:txt
复制
    return 196
代码语言:txt
复制
if n == 197:
代码语言:txt
复制
    return 197
代码语言:txt
复制
if n == 198:
代码语言:txt
复制
    return 198
代码语言:txt
复制
if n == 199:
代码语言:txt
复制
    return 199
代码语言:txt
复制
if n == 200:
代码语言:txt
复制
    return 200
代码语言:txt
复制
if n == 201:
代码语言:txt
复制
    return 201
代码语言:txt
复制
if n == 202:
代码语言:txt
复制
    return 202
代码语言:txt
复制
if n == 203:
代码语言:txt
复制
    return 203
代码语言:txt
复制
if n == 204:
代码语言:txt
复制
    return 204
代码语言:txt
复制
if n == 205:
代码语言:txt
复制
    return 205
代码语言:txt
复制
if n == 206:
代码语言:txt
复制
    return 206
代码语言:txt
复制
if n == 207:
代码语言:txt
复制
    return 207
代码语言:txt
复制
if n == 208:
代码语言:txt
复制
    return 208
代码语言:txt
复制
if n == 209:
代码语言:txt
复制
    return 209
代码语言:txt
复制
if n == 210:
代码语言:txt
复制
    return 210
代码语言:txt
复制
if n == 211:
代码语言:txt
复制
    return 211
代码语言:txt
复制
if n == 212:
代码语言:txt
复制
    return 212
代码语言:txt
复制
if n == 213:
代码语言:txt
复制
    return 213
代码语言:txt
复制
if n == 214:
代码语言:txt
复制
    return 214
代码语言:txt
复制
if n == 215:
代码语言:txt
复制
    return 215
代码语言:txt
复制
if n == 216:
代码语言:txt
复制
    return 216
代码语言:txt
复制
if n == 217:
代码语言:txt
复制
    return 217
代码语言:txt
复制
if n == 218:
代码语言:txt
复制
    return 218
代码语言:txt
复制
if n == 219:
代码语言:txt
复制
    return 219
代码语言:txt
复制
if n == 220:
代码语言:txt
复制
    return 220
代码语言:txt
复制
if n == 221:
代码语言:txt
复制
    return 221
代码语言:txt
复制
if n == 222:
代码语言:txt
复制
    return 222
代码语言:txt
复制
if n == 223:
代码语言:txt
复制
    return 223
代码语言:txt
复制
if n == 224:
代码语言:txt
复制
    return 224
代码语言:txt
复制
if n == 225:
代码语言:txt
复制
    return 225
代码语言:txt
复制
if n == 226:
代码语言:txt
复制
    return 226
代码语言:txt
复制
if n == 227:
代码语言:txt
复制
    return 227
代码语言:txt
复制
if n == 228:
代码语言:txt
复制
    return 228
代码语言:txt
复制
if n == 229:
代码语言:txt
复制
    return 229
代码语言:txt
复制
if n == 230:
代码语言:txt
复制
    return 230
代码语言:txt
复制
if n == 231:
代码语言:txt
复制
    return 231
代码语言:txt
复制
if n == 232:
代码语言:txt
复制
    return 232
代码语言:txt
复制
if n == 233:
代码语言:txt
复制
    return 233
代码语言:txt
复制
if n == 234:
代码语言:txt
复制
    return 234
代码语言:txt
复制
if n == 235:
代码语言:txt
复制
    return 235
代码语言:txt
复制
if n ==
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 剑指 offer|14 绳子

    题目描述 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数, n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m-1] 。...例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段, 此时得到的最大乘积是18。...1 × 1 = 1 示例2: 输入: 10 输出: 36 解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36 提示: 2 <= n <= 58 解题分析 我们从题目中看到,长度N的绳子切割后...绳子II 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段 (m、n都是整数,n>1并且m>1), 每段绳子的长度记为 k[0],k[1]...k[m - 1] 。...例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。

    29230

    剑指offer_14_绳子

    描述:给你一根长度为n的绳子,请把绳子剪成m段(m和n均为正整数,且m>1,n>1),每段绳子的长度记为a1、a2、a3、a4....an 现要求a1*a2*a3*a4*......动态规划:当绳子长度为n时,我们第一刀有n-1种可能,因为第一刀可以1米、2米、3米....n-1米。因此f(n) = max(f(i) * f(n - i)),其中0 < i < n。...} } storage[i] = max; } return storage[length]; } 贪心:如果我们按照下面这种策略来绳子...,则得到的各段绳子的长度乘积最大:当n>=5时,我们尽可能的多长度为3的绳子,当剩下的绳子长度为4时,就把绳子剪成2段长为2的,比如长为7的绳子我们剪成3 * 2 * 2这样得到最大值为12。...3) { return 2; } // 记录要剪成3m一段的段数 int three = length / 3; // 余下1m说明要腾出来一段凑4m来两个

    35510

    剑指Offer | 绳子(进阶版)

    绳子(进阶版) 1题目描述 给你一根长度为 n 的绳子,请把绳子剪成整数长的 m 段( m 、 n 都是整数, n > 1 并且 m > 1 , m <= n ),每段绳子的长度记为 k[1],......例如,当绳子的长度是 8 时,我们把它剪成长度分别为 2、3、3 的三段,此时得到的最大乘积是 18 。 由于答案过大,请对 998244353 取模。...2思路 & 解答 这道题其实如果不是数值很大,我们可以使用动态规划来完成: 每个长度的绳子,要么最长的情况是不剪开(长度是本身),要么长度是剪开两段的乘积。...于是我们需要想到其他的方式,如何快速计算 3 的 n 次方,这是我们需要解决的问题,因为在尽量凑 3 的前提下,有以下三种情况: 被 3 整除 等于 n :直接计算 3 的 n 次幂 被 3 取余数为1

    40610

    绳子

    大家好,我是程序员吴师兄,欢迎来到 图解剑指 Offer 结构化专栏,在这个专栏里我将和大家一起学习如何用结构化的思维来思考、解题、写代码,希望能帮助你即使在面试的时候紧张也能做对。...绳子。...题目汇总链接:https://www.algomooc.com/jianzhioffer 一、题目描述 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为...绳子.003 所以,每次绳子的操作都是至少长度为 2 的绳子的操作。 ? 剑指 Offer 14- I. 绳子.005 当剪下一段长度为 2 的绳子时,剩下的绳子长度为 8。...绳子.013 通过长度为 10 的绳子与长度为 8 的绳子的操作,我们可以发现:我们在不停的去相对的那根 第二段 的绳子,直到无可为止。 ? 剑指 Offer 14- I.

    77520

    LeetCode-面试题14-1-绳子

    # LeetCode-面试题14-1-绳子 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m] 。...例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。...方法2、贪心算法 切的时候尽可能的使乘积最大,当n>=5时,尽可能多切长度为3的绳子;当剩下的长度为4时,切成2段长度为2的绳子,之后乘积就是切成3的次数*切成2的次数 # Java代码1 class...count3 = n//3 # 当绳子剩下的长度为4时,不再剪去长度为3的绳子,因为2x2>3x1,为3的次数减少1次 if(n-count3*3):...count3-=1 # 重新计算差值,计算为2的次数 count2 = (n-count3*3)//2 return int(math.pow(3,count3

    24410

    笑不活了,银行赞助的 LeetCode 周赛,题目是适合打劫银行的日子

    绳子。 来看描述。 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m-1] 。...例如,当绳子的长度是 8 时,我们把它剪成长度分别为 2、3、3 的三段,此时得到的最大乘积是 18。 拿到题目后,先来思考一下面对一根长度为 10 的绳子,应该怎么去。...所以,每次绳子的操作都是至少长度为 2 的绳子的操作。 当剪下一段长度为 2 的绳子时,剩下的绳子长度为 8。 那么对于长度为 8 的这段绳子来说,它有两个选择,或者不。...怎么呢? 和长度为 10 的那段绳子一样的思路。 完之后,第二段绳子也被划分两块区域,a 和 b。...通过长度为 10 的绳子与长度为 8 的绳子的操作,我们可以发现:我们在不停的去相对的那根 第二段 的绳子,直到无可为止。

    41240

    golang刷leetcode 技巧(14)绳子(I,II)整数拆分

    绳子 I 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m] 。请问 k[0]*k[1]*......,会把绳子分为两部分,且两部分的结果互不影响 定义 dp[i] 表示长度i的绳子能得到的最大乘积 则 dp[i] 等于 在绳子区间[0, i)之间剪开的两部分乘积最大值 如果剪开位置为k,则区间分为...[0, k)和[k, i)两部分 第一部分长度为k, 第二部分长度为i-k 第二部分存在和不两种情况,的时候值为dp[i-k],不的时候取(i-k) 于是得到状态转换方程: dp[i]...i] = max(dp[i], max(k*(i-k), k*dp[i-k])); } } return dp[n]; } }; */ 绳子...II 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m] 。

    33330
    领券