#include <bits/stdc++.h>
using namespace std;
const int N = 5050;
int n;
char chr[N];
bool st[N], g[N][N], flag;
void dfs(int u, int fa) {
  if (flag) return;
  st[u] = true;
  for (int i = 1; i <= n; i++)
    if (g[u][i]) {
      if (g[i][fa] && !flag) {
        printf("%d %d %d", fa, u, i);
        flag = true;
        return;
      }
      if (!st[i]) dfs(i, u);
    }
}
int main() {
  scanf("%d", &n);
  for (register int i = 1; i <= n; i++) {
    scanf("%s", chr + 1);
    for (register int j = 1; j <= n; j++) g[i][j] = (chr[j] - '0');
  }
  for (int i = 1; i <= n; i++)
    if (!st[i]) dfs(i, 0);
  if (!flag) printf("-1");
  return 0;
}
