青蛙过河问题
Posted 秦枫-_-
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了青蛙过河问题相关的知识,希望对你有一定的参考价值。
class Solution {
public boolean canCross(int[] stones) {
int len=stones.length;
boolean [][]dp=new boolean[len][len];
dp[0][0]=true;
for(int i=1;i<len;i++){
int k=stones[i]-stones[i-1];
if(k>i)
return false;
}
for(int i=1;i<len;i++){
for(int j=i-1;j>=0;j--){
int k=stones[i]-stones[j];
if(k>j+1)break;
dp[i][k]=dp[j][k-1]||dp[j][k+1]||dp[j][k];
if(i==len-1&&dp[i][k])return true;
}
}
return false;
}
}
以上是关于青蛙过河问题的主要内容,如果未能解决你的问题,请参考以下文章