# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1129360 | Kerim | Friends (BOI17_friends) | C++20 | 348 ms | 1924 KiB |
#include <bits/stdc++.h>
using namespace std;
const int MAX_N = 2500;
int n;
vector <int> adj[MAX_N];
unordered_map <int, bool> isAdj[MAX_N];
set <int> solution, group[MAX_N];
vector <int> frecv[MAX_N];
bool vis[MAX_N];
void findGroup( multiset <int> candidates, set<int> uniqueCandidates, set <int> chosen, int p, int q ) {
if ( uniqueCandidates.size() > p + q )
return;
if ( candidates.size() == 0 ) {
if ( chosen.size() > solution.size() )
solution = chosen;
return;
}
int v = *candidates.begin();
if ( p > 0 ) {
multiset <int> newCandidates = candidates;
set<int> newUniqueCandidates = uniqueCandidates;
set <int> newChosen = chosen;
newCandidates.erase( v );
newUniqueCandidates.erase( v );
newChosen.insert( v );
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |