#include <bits/stdc++.h> using namespace std; #define fio ios_base::sync_with_stdio(false); cin.tie(NULL); typedef long long int lli; int n; int a[2001][2001]; int bfs(int s) { int visited[2001]={0}; visited[s]=1; int level[2001]={0}; level[s]=0; queue<int> q; q.push(s); while(!q.empty()) { int node=q.front(); q.pop(); for(int i=1;i<=n;i++) { if(a[node][i]==1) { if(visited[i]==false) { visited[i]=true; level[i]=level[node]+1; q.push(i); } else if(i==s) { return abs(level[node]-level[i])+1; } } } } return -1; } int main() { fio; cin>>n; for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) cin>>a[i][j]; } for(int i=1;i<=n;i++) { int x=bfs(i); if(x!=-1) cout<<x<<endl; else cout<<"NO WAY"<<endl; } return 0; }