美文网首页
LeetCode 01/17/18

LeetCode 01/17/18

作者: Muama | 来源:发表于2018-01-18 23:05 被阅读0次

DP
Max Product Of Cutting Rope
外循环为绳子长度,内循环为切绳子的位置,左边查表, 右边不动

for (int i = 3; i < m.length; i++){
      for (int j = 0; j < i; j++) {
        m[i] = Math.max(m[i], (i - j) * Math.max(m[j], j));
      }
    }

Array Hopper I
从后往前, m[i] means from index i can just to index array.length - 1
两种情况 1. array[i] + i >= array.length - 1
2. 在i可跳范围内,m[i + j] 为true的话,m[i]也为true

 for (int i = array.length - 2; i >= 0; i--) {
      if (i + array[i] >= array.length - 1) {
        canJump[i] = true;
      } else {
        for (int j = array[i]; j >= 1; j--) {
          if (canJump[j + i]) {
            canJump[i] = true;
            break;
          }
        }
      }
    }

相关文章

网友评论

      本文标题:LeetCode 01/17/18

      本文链接:https://www.haomeiwen.com/subject/nkwpoxtx.html