#include using namespace std; //#define DEBUG typedef struct wood{ int id; int width; int height; }wood; bool compare(wood a, wood b){ if(a.width!=b.width){ return a.width> n >> k; //「木の先端」 vector wooden_head(n); //「木の先端」の幅 for(int i=0;i> wooden_head[i].width; } //「木の先端」の高さ for(int i=0;i> wooden_head[i].height; } //ソート sort(wooden_head.begin(),wooden_head.end(),compare); //「木の中央」 vector wooden_central(2*n); //「木の中央」の幅 for(int i=0;i<2*n;i++){ wooden_central[i].id=i+1; cin >> wooden_central[i].width; } //「木の中央」の高さ for(int i=0;i<2*n;i++){ cin >> wooden_central[i].height; } //ソート sort(wooden_central.begin(),wooden_central.end(),compare); //「木の幹」 vector wooden_trunk(n); //「木の幹」の幅 for(int i=0;i> wooden_trunk[i].width; } //「木の幹」の高さ for(int i=0;i> wooden_trunk[i].height; } //ソート sort(wooden_trunk.begin(),wooden_trunk.end(),compare); #ifdef DEBUG for(wood w:wooden_head){ cout << w.id << ' '; } cout << endl; for(wood w:wooden_central){ cout << w.id << ' '; } cout << endl; for(wood w:wooden_trunk){ cout << w.id << ' '; } cout << endl; #endif vector> woods(k,vector(4)); int h=0; int c=0; for(int t=0;t