// No.239 にゃんぱすー package main import ( "bufio" "fmt" "os" "strconv" ) var sc = bufio.NewScanner(os.Stdin) var wr = bufio.NewWriter(os.Stdout) func next() string { sc.Scan() return sc.Text() } func nextInt() int { i, _ := strconv.Atoi(next()) return i } func nextFloat() float64 { f, _ := strconv.ParseFloat(next(), 64) return f } func nextInts(n int) []int { ret := make([]int, n) for i := 0; i < n; i++ { ret[i] = nextInt() } return ret } func nextFloats(n int) []float64 { ret := make([]float64, n) for i := 0; i < n; i++ { ret[i] = nextFloat() } return ret } func nextStrings(n int) []string { ret := make([]string, n) for i := 0; i < n; i++ { ret[i] = next() } return ret } func main() { sc.Split(bufio.ScanWords) var n = nextInt() var a = make([][]string, n) for i := 0; i < n; i++ { a[i] = make([]string, n) a[i] = nextStrings(n) } m := make(map[int]struct{}) for j := 0; j < n; j++ { m[j] = struct{}{} } for k := 0; k < n; k++ { for l := 0; l < n; l++ { if a[l][k] != "-" && a[l][k] != "nyanpass" { delete(m, k) break } } } if len(m) == 1 { for k := range m { // index to 村民番号 fmt.Println(k + 1) } } else { fmt.Println(-1) } }