Please help me in solving this question

#include
using namespace std;
bool chess(int a[][10], int i, int j, int n, int &c)
{
if(a[i][j]==0)
return false;
if(i<0 or j<0 or i>n or j>n)
return false;
c++;
a[i][j]=0;
bool a1,a2,a3,a4,a5,a6,a7,a8;
a1=chess(a,i-2,j-1,n,c);
// if(a1)
a2=chess(a,i-2,j+1,n,c);
// if(a1 or a2)
a3=chess(a,i+2,j-1,n,c);
// if(a1 or a2 or a3)
a4=chess(a,i+2,j+1,n,c);
// if(a1 or a2 or a3 or a4)
a5=chess(a,i-1,j-2,n,c);
// if(a1 or a2 or a3 or a4 or a5)
a6=chess(a,i-1,j+2,n,c);
// if(a1 or a2 or a3 or a4 or a5 or a6)
a7=chess(a,i+1,j-2,n,c);
// if(a1 or a2 or a3 or a4 or a5 or a6 or a7)
a8=chess(a,i+1,j+2,n,c);
if(a[i][j]==0)
a[i][j]=1;
return false;
}
int main() {
int n,a[10][10],c;
cin>>n;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
cin>>a[i][j];
chess(a,0,0,n-1,c);
cout<<n*n-c;
return 0;
}