제출 #154181

#제출 시각아이디문제언어결과실행 시간메모리
154181BabinSinkoZamjena (COCI18_zamjena)C++14
42 / 70
1060 ms31756 KiB
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <iostream>
#include <cctype>
#include <ctime>
#include <vector>
#include <string>

using namespace std;

int n, sol;
string s1[500003], s2[500003], ts;

int main(){
cin >> n;
for (int i= 0; i < n; i++){
	cin >> s1[i];
}
for (int i= 0; i < n; i++){
	cin >> s2[i];
	}
for (int i= 0; i < n; i++){
	if (s1[i][0] <= 57 and s2[i][0] <= 57){
		if (s1[i] != s2[i])
			sol = 1;
	}
	if (s1[i][0] <= 57 and s2[i][0] > 57){
		ts = s2[i];
		for (int j = 0; j < n; j++){
			if (s1[j] == ts){
				s1[j] = s1[i];
			}
			if (s2[j] == ts){
				s2[j] = s1[i];
			}
		}
	}
	if (s1[i][0] > 57 and s2[i][0] <= 57){
		ts = s1[i];
		for (int j = 0; j < n; j++){
			if (s1[j] == ts){
				s1[j] = s2[i];
			}
			if (s2[j] == ts){
				s2[j] = s2[i];
			}
		}
	}
}
for (int i= 0; i < n; i++){
	if (s1[i][0] <= 57 and s2[i][0] <= 57){
		if (s1[i] != s2[i])
			sol = 1;
	}
	if (s1[i][0] <= 57 and s2[i][0] > 57){
		ts = s2[i];
		for (int j = 0; j < n; j++){
			if (s1[j] == ts){
				s1[j] = s1[i];
			}
			if (s2[j] == ts){
				s2[j] = s1[i];
			}
		}
	}
	if (s1[i][0] > 57 and s2[i][0] <= 57){
		ts = s1[i];
		for (int j = 0; j < n; j++){
			if (s1[j] == ts){
				s1[j] = s2[i];
			}
			if (s2[j] == ts){
				s2[j] = s2[i];
			}
		}
	}
}
for (int i= 0; i < n; i++){
	if (s1[i][0] <= 57 and s2[i][0] <= 57){
		if (s1[i] != s2[i])
			sol = 1;
	}
	if (s1[i][0] <= 57 and s2[i][0] > 57){
		ts = s2[i];
		for (int j = 0; j < n; j++){
			if (s1[j] == ts){
				s1[j] = s1[i];
			}
			if (s2[j] == ts){
				s2[j] = s1[i];
			}
		}
	}
	if (s1[i][0] > 57 and s2[i][0] <= 57){
		ts = s1[i];
		for (int j = 0; j < n; j++){
			if (s1[j] == ts){
				s1[j] = s2[i];
			}
			if (s2[j] == ts){
				s2[j] = s2[i];
			}
		}
	}
}
for (int i= 0; i < n; i++){
	if (s1[i] != s2[i] and s1[i][0] <= 57 and s2[i][0] <= 57){
		sol = 1;
	}
}
if (sol == 1){
	cout << "NE";
}else{
	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...