int sum = 0;
for(int l = 1; l <= n; ++l){
int count = 0, flag = 0;
for (int i = 1 ; i+l <= n ; ++ i)
for (int j = 1 ; j+l <= n ; ++ j){
flag = 1;
for(int h = j; h < j+l; ++h)
if(!H[i][h] || !H[i+l][h]) flag = 0;
for(int v = i; v < i+l; ++v)
if(!V[v][j] || !V[v][j+l]) flag = 0;
count += flag;
}
sum+=count;
if(count)printf("%d square (s) of size %d\n",count,l);
}
关键地方的枚举