Submission #721226

# Submission time Handle Problem Language Result Execution time Memory
721226 2023-04-10T14:13:16 Z vjudge1 Zamjena (COCI18_zamjena) C++17
28 / 70
12 ms 1508 KB
#include <bits/stdc++.h>

using namespace std;

bool is_str(string s){
   if(s[0] - '0' > 9){
      return true;
   }
   return false;
}

int main()
{
    ios_base::sync_with_stdio(0); cin.tie(0);

    int n; cin >> n;

    vector<string> v1(n);
    map<string, string> mp;
    for(int i = 0; i < n; i++){
        cin >> v1[i];
        mp[v1[i]] = "-1";
    }
    vector<string> v2(n);
    for(int i = 0; i < n; i++){
        cin >> v2[i];
        mp[v2[i]] = "-1";
    }
    for(int i = 0; i < n; i++){
        if(!is_str(v1[i]) && !is_str(v2[i]) && v1[i] != v2[i]){
            cout << "NE" <<"\n";
            return 0;
        }
        if(is_str(v1[i]) && !is_str(v2[i])){
            if(mp[v1[i]] == "-1"){
               mp[v1[i]] = v2[i];
            }
        }
        if(!is_str(v1[i]) && is_str(v2[i])){
            if(mp[v2[i]] == "-1"){
               mp[v2[i]] = v1[i];
            }
        }
    }

    for(int i = 0; i < n; i++){
        if(mp[v1[i]] != "-1"){
            v1[i] = mp[v1[i]];
        }
    }
    for(int i = 0; i < n; i++){
        if(mp[v2[i]] != "-1"){
            v2[i] = mp[v2[i]];
        }
    }

    for(int i = 0; i < n; i++){
        if(!is_str(v1[i]) && !is_str(v2[i]) && v1[i] != v2[i]){
            cout << "NE" <<"\n";
            return 0;
        }
        if(is_str(v1[i]) && is_str(v2[i])){
            v1[i] = "1";
            v2[i] = "1";
        }
        if(!is_str(v1[i]) && is_str(v2[i])){
            v2[i] = v1[i];
        }
        if(is_str(v1[i]) && !is_str(v2[i])){
            v1[i] = v2[i];
        }
    }
    for(int i = 0; i < n; i++){
        if(v1[i] != v2[i]){
            cout << "NE" <<"\n";
            return 0;
        }
    }
    /*
    for(int i = 0; i < n; i++){
        cout << v1[i] <<" ";
    }
    cout <<"\n";
    for(int i = 0; i < n; i++){
        cout << v2[i] <<" ";
    }
    cout <<"\n";
*/
    cout << "DA" <<"\n";



/*
3
3 1 2
3 1 x

4
4 5 iks ipsilon
1 iks 3 iks

5
x 3 x y 3
x y 2 z 3



*/

}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 292 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Incorrect 1 ms 212 KB Output isn't correct
7 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Incorrect 4 ms 724 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 12 ms 1508 KB Output isn't correct
2 Halted 0 ms 0 KB -