#include <algorithm>
#include <deque>
#include <iostream>
#include <iomanip>
#include <set>
#include <vector>
using namespace std;
#define DBG(x) { cout << left << setw(40) << setfill(' ') << #x << (x) << endl; }
int main()
{
vector<int> a{1,-2,3,-4,0,0,0,10,-10};
sort(begin(a),end(a),[](int l, int r){
return (l == 0) ^ (r == 0) ? r == 0 : less<int>()(l,r);
});
for(int v : a){
cout << v << ", ";
}
return 0;
}
I2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGRlcXVlPgojaW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlIDxpb21hbmlwPgojaW5jbHVkZSA8c2V0PgojaW5jbHVkZSA8dmVjdG9yPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNkZWZpbmUgREJHKHgpIHsgY291dCA8PCBsZWZ0IDw8IHNldHcoNDApIDw8IHNldGZpbGwoJyAnKSA8PCAjeCA8PCAoeCkgPDwgZW5kbDsgfQoKCmludCBtYWluKCkKewoJdmVjdG9yPGludD4gYXsxLC0yLDMsLTQsMCwwLDAsMTAsLTEwfTsKCXNvcnQoYmVnaW4oYSksZW5kKGEpLFtdKGludCBsLCBpbnQgcil7CgkJcmV0dXJuIChsID09IDApIF4gKHIgPT0gMCkgPyByID09IDAgOiBsZXNzPGludD4oKShsLHIpOwoJfSk7CgoJZm9yKGludCB2IDogYSl7CgkJY291dCA8PCB2IDw8ICIsICI7Cgl9CgoJcmV0dXJuIDA7Cn0KCg==
-10, -4, -2, 1, 3, 10, 0, 0, 0,