#include #include #include #include #include #include #include #include #include using namespace std; using ll = long long; namespace cpio{ //IO library for Competitive-Programming struct scanner { private: struct reader { template operator T() const {T buf; std::cin >> buf; return buf;} }; public: scanner() {std::cin.sync_with_stdio(false); std::cin.tie(nullptr);} reader operator()() const {return reader();} }; void yes(){ cout << "Yes\n"; } void no(){ cout << "No\n"; } } namespace cpmath{ //Math library for Competitive-Programming ll factorial(ll a, ll b = -1, const ll fmod = -1){ ll ans = 1; if (fmod > 1) { if (b == -1) for (ll i = a; i > 1; i--) ans = ((ans%fmod)*(i%fmod))%fmod; else for (ll i = a; i >= b; i--) ans = ((ans%fmod)*(i%fmod))%fmod; } else{ if (b == -1) for (ll i = a; i > 1; i--) ans = ans*i; else for(ll i = a; i >= b; i--) ans = ans*i; } return ans; } ll fastpow(ll m, ll p){ if (p == 0) return 1; if (p%2 == 0){ ll t = fastpow(m, p/2); return t*t; } return m*fastpow(m, p-1); } ll modpow(ll m, ll p, const ll fmod){ if (p == 0) return 1; if (p%2 == 0){ ll t = modpow(m, p/2, fmod); return (t*t)%fmod; } return (m*modpow(m, p-1, fmod))%fmod; } const ll mod97 = 1000000007; const ll mod99 = 1000000009; const ll mod89 = 998244353; } cpio::scanner in; //Declaration of inputclass using cpio::yes; using cpio::no; using cpmath::mod89; using cpmath::mod97; using cpmath::mod99; int main(){ int n = in(); string greeting[n][n]; for (int i = 0; i < n; i++){ for (int j = 0; j < n; j++){ cin >> greeting[i][j]; } } vector nyanpass(n, true); for (int i = 0; i < n; i++){ for (int j = 0; j < n; j++){ if (greeting[i][j] != "nyanpass" && i != j){ cerr << i << " " << j << endl; nyanpass[j] = false; } } } for (auto x : nyanpass){ cerr << x << " "; } cerr << endl; int ans = 0; for (int i = 0; i < n; i++){ if (nyanpass[i] == true){ if (ans == 0) ans = i+1; else {cout << -1 << endl; return 0;} } } if (ans == 0) cout << -1 << endl; else cout << ans << endl; }