#include using namespace std; int n,cmp,st[25],NrCmp,v[25],Q,gataback; vectorless,more,nums; vectorLena_sort(vectora) { int pivot,i; if (a.size() <= 1) { return a; } pivot = a[0]; ///cout<less; vectormore; for (i = a.size()-1; i >=0 ; --i) { // Comparison if(a[i]!=pivot) NrCmp++; if (a[i] < pivot) { less.push_back(a[i]); } if (a[i] > pivot) { more.push_back(a[i]); } } reverse(less.begin(),less.end()); reverse(more.begin(),more.end()); /*cout<<"\tless:\t"; for(int i=0;isorted_less; vectorsorted_more; sorted_less = Lena_sort(less); sorted_more = Lena_sort(more); reverse(sorted_less.begin(),sorted_less.end()); reverse(sorted_more.begin(),sorted_more.end()); vectorans; while(sorted_less.size()) { ans.push_back(sorted_less[sorted_less.size()-1]); sorted_less.pop_back(); } ans.push_back(pivot); while(sorted_more.size()) { ans.push_back(sorted_more[sorted_more.size()-1]); sorted_more.pop_back(); } return ans; } void Check() { int i,x; NrCmp=0; nums.clear(); for(i=n;i>=1;--i) { x=st[i]; nums.push_back(x); } Lena_sort(nums); if(NrCmp==cmp) { for(i=1;i<=n;++i) cout<>Q; for(i=1;i<=Q;++i) { cin>>n>>cmp; gataback=0; Back(1); if(!gataback) cout<<"-1\n"; } /*nums.clear(); nums.push_back(4); nums.push_back(2); nums.push_back(1); nums.push_back(3); nums.push_back(5); NrCmp=0; nums=Lena_sort(nums); for(int i=0;i