动态规划 跳台阶
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
public static void jump(int[] steps,int target){ int[] count = new int[target+1]; for(int i=0;i<count.length;i++){ count[i] = 0; } int init = steps[0]; count[init] = 1; for(int i=init+1;i<count.length;i++){ int sum = 0; for(int j=0;j<steps.length;j++){ if(i-steps[j]>=0){ //跳一步直接跳上去,也可以让stpes[0]=1,则不需要这个判断 if(i==steps[j]) sum +=1; else{ sum += count[i-steps[j]]; } } } count[i] = sum; } System.out.println(Arrays.toString(count)); }
posted on 2017-08-23 21:43 zhangxiaoyu 阅读(159) 评论(0) 收藏 举报
浙公网安备 33010602011771号