#include<bits/stdc++.h>
using namespace std;
string dizi[100007];
string dizi2[100007];
map<string,vector<pair<int,bool>>>degisken;
map<string,string>act;
int main()
{
int n;
cin >> n;
// string gir;
for(int i=0;i<n;i++)
{
cin >> dizi[i];
if(!isdigit(dizi[i][0]))
{
degisken[dizi[i]].push_back({i,0});
}
}
for(int i=0;i<n;i++)
{
cin >> dizi2[i];
if(!isdigit(dizi2[i][0]))
{
degisken[dizi2[i]].push_back({i,1});
// if(isdigit(dizi[i][0]))
// {
// }
}
else
{
if(isdigit(dizi[i][0]))
{
if(dizi[i]!=dizi2[i])
{
cout << "NE\n";
exit(0);
}
}
}
}
for(int i=0;i<=n;i++)
{
// for(int i=0;i<n;i++)
// {
// cout << dizi[i] << " ";
// }
// cout <<"\n";
// for(int i=0;i<n;i++)
// {
// cout << dizi2[i] << " ";
// }
// cout <<"\n\n";
if(!isdigit(dizi[i][0]) && !isdigit(dizi2[i][0]) && dizi[i]!=dizi2[i])
{
// cout << i << " ";
string za=dizi2[i];
for(auto x:degisken[za])
{
degisken[dizi[i]].push_back(x);
// cout << x.first << " ";
if(x.second==0)
{
dizi[x.first]=dizi[i];
}
else
dizi2[x.first]=dizi[i];
}
degisken[za].clear();
}
}
for(int i=0;i<n;i++)
{
if(isdigit(dizi[i][0]) && !isdigit(dizi2[i][0]))
{
string muz=dizi[i],muz2=dizi2[i];
for(auto x:degisken[muz2])
{
if(x.second==0)
{
dizi[x.first]=muz;
}
else
dizi2[x.first]=muz;
}
degisken[muz2].clear();
}
else if(!isdigit(dizi[i][0])&& isdigit(dizi2[i][0]))
{
string muz=dizi2[i],muz2=dizi[i];
for(auto x:degisken[muz2])
{
if(x.second==0)
{
dizi[x.first]=muz;
}
else
dizi2[x.first]=muz;
}
degisken[muz2].clear();
}
}
/*for(int i=0;i<n;i++)
{
cout << dizi[i] << " ";
}
cout <<"\n";
for(int i=0;i<n;i++)
{
cout<< dizi2[i] << " ";
}*/
for(int i=0;i<n;i++)
{
if(dizi[i]!=dizi2[i])
{
cout <<"NE\n";
exit(0);
}
}
cout << "DA\n";
exit(0);
// for(int i=0;i<n;i++)
// {
// if(!isdigit(dizi[i][0]) && !isdigit(dizi2[i][0]))
// {
// for(auto x:degisken2[dizi2[i]])
// {
// // degisken[dizi[i]]
// }
// }
// }
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
8 ms |
6648 KB |
Output is correct |
2 |
Correct |
7 ms |
6648 KB |
Output is correct |
3 |
Correct |
8 ms |
6560 KB |
Output is correct |
4 |
Correct |
7 ms |
6520 KB |
Output is correct |
5 |
Correct |
7 ms |
6648 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
6524 KB |
Output is correct |
2 |
Correct |
7 ms |
6520 KB |
Output is correct |
3 |
Correct |
7 ms |
6648 KB |
Output is correct |
4 |
Correct |
7 ms |
6520 KB |
Output is correct |
5 |
Correct |
8 ms |
6648 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
6620 KB |
Output is correct |
2 |
Correct |
8 ms |
6776 KB |
Output is correct |
3 |
Correct |
7 ms |
6648 KB |
Output is correct |
4 |
Correct |
31 ms |
6520 KB |
Output is correct |
5 |
Correct |
8 ms |
6520 KB |
Output is correct |
6 |
Correct |
7 ms |
6520 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
30 ms |
8568 KB |
Output is correct |
2 |
Correct |
10 ms |
6776 KB |
Output is correct |
3 |
Correct |
17 ms |
7160 KB |
Output is correct |
4 |
Correct |
55 ms |
10360 KB |
Output is correct |
5 |
Correct |
25 ms |
7032 KB |
Output is correct |
6 |
Correct |
15 ms |
6904 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
905 ms |
65536 KB |
Execution killed with signal 9 (could be triggered by violating memory limits) |
2 |
Halted |
0 ms |
0 KB |
- |