Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <bits/stdc++.h>using namespace std;typedef long long ll;const int N=505;char a[N][N];int up[N][N],dow[N][N],lef[N][N],righ[N][N];int main(){int n,m;scanf("%d",&n);for (int q=1;q<=n;q++)scanf("%s",a[q]+1);for (int q=1;q<=n;q++){for (int w=1;w<=n;w++)if (a[q][w]=='1')lef[q][w]=lef[q][w-1]+1;for (int w=n;w>=1;w--)if (a[q][w]=='1')righ[q][w]=righ[q][w+1]+1;for (int w=1;w<=n;w++)if (a[w][q]=='1')up[w][q]=up[w-1][q]+1;for (int w=n;w>=1;w--)if (a[w][q]=='1')dow[w][q]=dow[w+1][q]+1;