제출 #498427

#제출 시각아이디문제언어결과실행 시간메모리
498427Fake4FunVlak (COCI20_vlak)C++14
70 / 70
20 ms9632 KiB
#include<iostream>
using namespace std;
const int MAX=2e5+5;
int n,m;
int id,nex[26][MAX];
short val[MAX];
void add(string s,int x){
    int c=0;
    for(auto i:s){
        int z=i-'a';
        if(!nex[z][c]) nex[z][c]=++id;
        c=nex[z][c];
        val[c]|=x;
    }
}
#define BIT(x,i) (x>>i&1)
bool DFS(int node,bool x){
    bool Fin=0;
    for(int i=0;i<26;i++) if(nex[i][node]){
        int z=nex[i][node];
        if(!BIT(val[z],x)) continue;
        if(!BIT(val[z],!x)) return 1;
        else if(!DFS(z,!x)){Fin=1; break;}
    }
    return Fin;
}
int main(){
    string s;
    cin>>n;
    for(int i=1;i<=n;i++) cin>>s, add(s,1);
    cin>>m;
    for(int i=1;i<=m;i++) cin>>s, add(s,2);
    cout<<(DFS(0,0)?"Nina":"Emilija");
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...