#include #include int countDominoWays(int numOfLevelLeft); int main() { printf("Number of ways to fill the board = %d \n",countDominoWays(20)); return 0; } int countDominoWays(int numOfLevelLeft) { if(numOfLevelLeft == 0) // No place left on board return 0; if(numOfLevelLeft == 1) // only one way to fill last level ( -- ) return 1; // Board can be filled in two types of domino placement ( -- ) or ( || ) // ( -- ) uses one level on board ( || ) uses 2 level on board return countDominoWays(numOfLevelLeft - 1) + countDominoWays(numOfLevelLeft - 2); }