commit 5908a09f2caaff16ee2ccaae7aaae4f3a61aa386
parent a2414f77465b341735b9425d3fa9ebaa7850d6e1
Author: Marc Jeanmougin <mc@localhost.localdomain>
Date: Fri, 27 Mar 2015 21:24:22 +0100
tot
Diffstat:
1 file changed, 13 insertions(+), 8 deletions(-)
diff --git a/testing/a3nm/main.cpp b/testing/a3nm/main.cpp
@@ -19,11 +19,11 @@ vector<int> r2;
vector<int> c2;
//avant
-bool compare_vect(vector<int> x, vector<int> y){
- if(x.size()==y.size()){
- return size[x[0]]<size[y[0]];
+bool compare_vect(int x, int y){
+ if(G[x].size()==G[y].size()){
+ return size[x]<size[y];
} else {
- return x.size()<y.size();
+ return G[x].size()<G[y].size();
}
}
@@ -81,16 +81,21 @@ int main(int argc, char **argv) {
}
//pendant
- sort(G.begin(),G.end(),compare_vect);
+ vector<int> ids(G.size());
+ for (unsigned i = 0; i < G.size(); i++) {
+ ids[i]=i;
+ }
+
+ sort(ids.begin(),ids.end(),compare_vect);
vector<bool> taken(G.size(),false);
vector<int> sortie;
vector<bool> choix;
for(unsigned int i=0;i<G.size();i++){
- if(taken[G[i][0]])continue;
- sortie.push_back(G[i][0]);
- for(unsigned int j = 0; j < G[i].size(); j++){
+ if(taken[ids[i]])continue;
+ sortie.push_back(ids[i]);
+ for(unsigned int j = 0; j < G[ids[i]].size(); j++){
taken[j]=true;
}
}