蓝桥杯真题【振兴中华】
import java.time.Year;
import java.util.Calendar;
import javax.sound.midi.Soundbank;
public class java_2013_a2 {
public int f(int i, int j) {
// 只要碰到边界,再折返按另一个方向走,就能确定构成一句话从我做起振兴中华“”
if (i == 3 || j == 4)
return 1;
// 因为按照题目给的格子的阅读顺序,只能从上往下或者从左往右走
// 所以dfs(或者动态规划)只需要将两种方向的走法相加即可
return f(i + 1, j) + f(i, j + 1);
}
public static void main(String[] args) {
/*
*
* 题目:振兴中华
* https://www.lanqiao.cn/problems/713/learning/
*
* 思路:
* 按照题目给的格子的阅读顺序,只能从上往下或者从左往右走,所以
* 所有可能的路线个数=向下走的路线数+向右走的路线数。注意一旦路线
* 碰到边界,只要再换另一个方向直走到(3,4)的位置就确定一条路线了。
*
* 注意动态规划的三要素:重复、变化、边界
*
* 答案:
* 35
*
*/
java_2013_a2 s=new java_2013_a2();
int ans = s.f(0, 0); // 从(0,0)点开始走,记录所有可能的路线个数
System.out.println(ans);
}
}