Robot Paths, Codechef

Why my program does not take any input?

#include
using namespace std;

bool findPath(int arr[][1000], int m , int n, int i, int j, int &ans)
{
if(i == m && j == n)
{
ans++;
return 0;
}

if(i > m || j > n)
{
	return 0;
}
if(arr[i][j] == 0)
{
	return 0;
}

bool  a = findPath(arr,m,n,i+1,j, ans);
bool b = findPath(arr,m,n,i,j+1, ans);
if(a || b)
{
	return 1;
}
return false;

}
int main()
{
int m,n,p;
cin>>m;
cin>>n;
cin>>p;

int arr[1000][1000];
for(int i = 0; i < m; i++)
{
	for(int j =0; j < n; j++)
	{
		arr[i][j] = 1;
	}
}

for (int i = 0; i < p; ++i)
{
	int x;
	int y;
	cin>>x>>y;
	arr[x][y] = 0;
}
int ans = 0;
findPath(arr, m,n,  0, 0, ans);
cout<<ans;

}

Please as soon as possible