fork download
  1.  
  2. #include <iostream>
  3. using namespace std;
  4.  
  5. int tileWays(int n, int m);
  6.  
  7. int main(int argc, char const *argv[])
  8. {
  9. int T;
  10. cin>>T;
  11. int i = 0;
  12. int n,m;
  13. while(i++<T){
  14. cin>>n>>m;
  15. cout<<tileWays(n,m)<<endl;
  16. }
  17. return 0;
  18. }
  19.  
  20. int tileWays(int n, int m)
  21. {
  22. //base case
  23. if (n < 0)
  24. return 0;
  25. if (n == 0)
  26. return 1;
  27. if(n==m)
  28. return 2;
  29.  
  30. //recursive case
  31. return tileWays(n - 1,m) + tileWays(n - m,m);
  32. }
Success #stdin #stdout 0s 15232KB
stdin
2
2 3
4 4
stdout
1
2