Submission #741716

# Submission time Handle Problem Language Result Execution time Memory
741716 2023-05-14T16:34:25 Z rominanafu Friend (IOI14_friend) C++11
19 / 100
1000 ms 7604 KB
#include "friend.h"
#include <bits/stdc++.h>

using namespace std;

vector<int> amigos[100005];
bool vis[100005];
bool tomo[100005];
int c[100005];

int tomo_no_tomo(int x, int &n) {
    if (x == n)
        return 0;
    bool puedo_tomar = true;
    int r=0;
    for(auto a:amigos[x]) {
        if (tomo[a]) {
            puedo_tomar = false;
            break;
        }
    }
    if (puedo_tomar) {
        tomo[x] = true;
        r = tomo_no_tomo(x+1, n) + c[x];
        tomo[x] = false;
    }
    r = max(r, tomo_no_tomo(x+1, n));
    return r;
}

int findSample(int n, int confidence[], int host[], int protocol[]) {
    int max_con = confidence[0];
    int sub2 = 0;
    c[0] = confidence[0];
    for(int i=1; i<n; i++){
        c[i] = confidence[i];
        max_con += confidence[i];
        if (protocol[i] == 0) { /// I Am Your Friend
            amigos[i].push_back(host[i]);
            amigos[host[i]].push_back(i);
        } else if (protocol[i] == 1) { /// My Friends are Your Friends
            sub2++;
            for(auto e:amigos[host[i]]) {
                amigos[i].push_back(e);
                amigos[e].push_back(i);
            }
        } else { /// We Are Your Friends
            amigos[i].push_back(host[i]);
            amigos[host[i]].push_back(i);
            for(auto e:amigos[host[i]]) {
                amigos[i].push_back(e);
                amigos[e].push_back(i);
            }
        }
    }
    if (sub2 != n-1) {
        max_con = tomo_no_tomo(0, n);
    }
    return max_con; /// return maximum confidence possible
}
# Verdict Execution time Memory Grader output
1 Correct 2 ms 2644 KB Output is correct
2 Correct 2 ms 2644 KB Output is correct
3 Correct 2 ms 2664 KB Output is correct
4 Correct 2 ms 2660 KB Output is correct
5 Correct 2 ms 2656 KB Output is correct
6 Correct 2 ms 2664 KB Output is correct
7 Correct 2 ms 2772 KB Output is correct
8 Correct 1 ms 2644 KB Output is correct
9 Correct 2 ms 2644 KB Output is correct
10 Correct 2 ms 2664 KB Output is correct
11 Correct 2 ms 2644 KB Output is correct
12 Correct 2 ms 2664 KB Output is correct
13 Correct 2 ms 2644 KB Output is correct
14 Correct 2 ms 2644 KB Output is correct
15 Correct 2 ms 2664 KB Output is correct
16 Correct 2 ms 2664 KB Output is correct
17 Correct 2 ms 2664 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 2644 KB Output is correct
2 Correct 2 ms 2644 KB Output is correct
3 Correct 1 ms 2644 KB Output is correct
4 Correct 2 ms 2644 KB Output is correct
5 Correct 2 ms 2644 KB Output is correct
6 Correct 2 ms 2644 KB Output is correct
7 Correct 2 ms 2644 KB Output is correct
8 Correct 2 ms 2644 KB Output is correct
9 Correct 3 ms 2620 KB Output is correct
10 Correct 2 ms 2644 KB Output is correct
# Verdict Execution time Memory Grader output
1 Runtime error 4 ms 5204 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2644 KB Output is correct
2 Correct 2 ms 2644 KB Output is correct
3 Correct 2 ms 2644 KB Output is correct
4 Correct 2 ms 2668 KB Output is correct
5 Execution timed out 1088 ms 2772 KB Time limit exceeded
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2644 KB Output is correct
2 Correct 1 ms 2644 KB Output is correct
3 Correct 1 ms 2644 KB Output is correct
4 Correct 1 ms 2644 KB Output is correct
5 Correct 1 ms 2644 KB Output is correct
6 Correct 2 ms 2668 KB Output is correct
7 Correct 2 ms 2644 KB Output is correct
8 Correct 2 ms 2644 KB Output is correct
9 Execution timed out 1085 ms 2668 KB Time limit exceeded
10 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 2644 KB Output is correct
2 Correct 2 ms 2644 KB Output is correct
3 Correct 2 ms 2644 KB Output is correct
4 Correct 2 ms 2644 KB Output is correct
5 Correct 2 ms 2644 KB Output is correct
6 Correct 2 ms 2644 KB Output is correct
7 Correct 2 ms 2644 KB Output is correct
8 Correct 2 ms 2660 KB Output is correct
9 Correct 2 ms 2660 KB Output is correct
10 Correct 2 ms 2644 KB Output is correct
11 Correct 2 ms 2660 KB Output is correct
12 Runtime error 28 ms 7604 KB Execution killed with signal 11
13 Halted 0 ms 0 KB -