Submission #621152

#TimeUsernameProblemLanguageResultExecution timeMemory
621152sword060Zamjena (COCI18_zamjena)C++17
70 / 70
251 ms8740 KiB
#include <bits/stdc++.h>
using namespace std;
map<string,string>par;
map<string,int>mp;
string get(string a){return (par.find(a)!=par.end()?par[a]=get(par[a]):a);}
void unite(string a,string b){
  a=get(a);b=get(b);
  if(a==b)return;
  par[b]=a;
}
int main(){
  ios::sync_with_stdio(0); cin.tie(0);
  int x;cin>>x;
  string a[x],b[x];
  for(int i=0;i<x;i++)cin>>a[i];
  for(int i=0;i<x;i++)cin>>b[i],unite(a[i],b[i]);
  for(auto [i,j]:par){
    int c=(i[0]>='0'&&i[0]<='9');
    string lol=get(i);
    mp[get(lol)]+=c;
    if(mp[get(lol)]+(lol[0]>='0'&&lol[0]<='9')>1){
      cout<<"NE";
      return 0;
    }
  }
  cout<<"DA";
	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...