#include #define pb push_back #define mp make_pair #define mt make_tuple #define ll long long #define pii pair #define tii tuple #define N 100005 #define mod 2000003 #define X first #define Y second #define eps 0.0000000001 #define all(x) x.begin(),x.end() #define tot(x) x+1,x+n+1 using namespace std; mapeste; int n, i; string s[110], sol, t; bool ok(string s) { if(s == "") return 1; if(s.size() == 0) return 1; int n = s.size(); bool ret = 0; for(int i = 0; i < n && !ret; i++) { t = s.substr(0, i + 1); string w = s.substr(i + 1, n); if(este[t]) ret |= ok(w); } return ret; } int main() { cin.sync_with_stdio(0); cout.sync_with_stdio(0); cin >> n; for(i = 1; i <= n; i++) { cin >> s[i]; este[s[i]] = 1; } for(i = 1; i <= n; i++) { este[s[i]] = 0; if(ok(s[i])) { if(s[i].size() > sol.size()) sol = s[i]; } este[s[i]] = 1; } if(sol == "") cout << -1; else cout << sol; return 0; }