解题思路:
注意事项:
参考代码:
import java.util.Scanner;
public class Main {
private static int count=0;
private static int[] a;
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
int n=input.nextInt(),m=input.nextInt();
a=new int[n+1];
for(int i=0;i<m;i++){
int k=input.nextInt();
if(k<n);
a[k]=1;
}
dfs(1,n);
System.out.println(count);
}
private static void dfs(int i, int n) {
if(i>=n){
count++;
return;
}
if(i+1<=n&&a[i+1]!=1)
dfs(i+1,n);
if(i+2<=n&&a[i+2]!=1)
dfs(i+2,n);
}
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:576 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:617 |
【计算两点间的距离】 (C语言代码)浏览:882 |
C语言训练-排序问题<1> (C语言代码)浏览:600 |
C语言程序设计教程(第三版)课后习题1.6 (C++代码)浏览:890 |
P1001 (C语言代码)浏览:800 |
简单的a+b (C语言代码)浏览:626 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:470 |
三角形 (C++代码)递推浏览:755 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:540 |