Skip to content

Instantly share code, notes, and snippets.

@jwon0615
Created May 29, 2018 05:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jwon0615/0fb43f3d843d0a1f24a9bd47d9744a2c to your computer and use it in GitHub Desktop.
Save jwon0615/0fb43f3d843d0a1f24a9bd47d9744a2c to your computer and use it in GitHub Desktop.
#include <stdio.h>
int n,sum;
void dfs(int k, int p1, int p2){
if(k>n) return;
if(k==n) {
sum++; return;
}
if((p1==3) or (p2==3)){
dfs(k+1,p2,1);
dfs(k+2,p2,2);
}
else{
dfs(k+1,p2,1);
dfs(k+2,p2,2);
dfs(k+3,p2,3);
}
}
int main(){
scanf("%d", &n);
dfs(0,0,0);
printf("%d", sum);
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment