# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
161397 | georgerapeanu | Untitled (POI11_imp) | C++11 | 1092 ms | 42616 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <cstdio>
#include <vector>
#include <algorithm>
#include <ctime>
#include <cstdlib>
using namespace std;
const int NMAX = 3000;
int n,m;
vector<int> graph[NMAX + 5];
int gr[NMAX + 5];
bool del[NMAX + 5];
int main(){
scanf("%d %d",&n,&m);
for(int i = 1;i <= m;i++){
int x,y;
scanf("%d %d",&x,&y);
gr[x]++;
gr[y]++;
graph[x].push_back(y);
graph[y].push_back(x);
}
vector<int> elim;
for(int i = 1;i <= n;i++){
if(gr[i] < 2 * n / 3 - 1){
elim.push_back(i);
del[i] = true;
}
}
for(int i = 0;i < (int)elim.size();i++){
for(auto it:graph[elim[i]]){
gr[it]--;
if(del[it] == false && gr[it] < 2 * n / 3 - 1){
del[it] = true;
elim.push_back(it);
}
}
}
vector<pair<int,int> > nodes;
for(int i = 1;i <= n;i++){
if(del[i] == false){
nodes.push_back({gr[i],i});
}
}
srand(time(NULL));
random_shuffle(nodes.begin(),nodes.end());
elim.clear();
for(int i = 0;i < n / 3;i++){
elim.push_back(nodes[i].second);
del[nodes[i].second] = true;
}
for(int i = 0;i < (int)elim.size();i++){
for(auto it:graph[elim[i]]){
gr[it]--;
if(del[it] == false && gr[it] < n / 3 - 1){
del[it] = true;
elim.push_back(it);
}
}
}
vector<int> ans;
for(int i = 1;i <= n;i++){
if(del[i] == false){
ans.push_back(i);
}
}
random_shuffle(ans.begin(),ans.end());
ans.resize(n / 3);
for(auto it:ans){
printf("%d ",it);
}
return 0;
}
Compilation message (stderr)
# | 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... |
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |