#include struct Point { Point(int _x, int _y) { if(_x < 0 || (_x == 0 && _y < 0)) { _x *= -1; _y *= -1; } x = _x; y = _y; } int x; int y; bool operator<(const Point& other) const { //if((x == other.x && y == other.y) || // (x == -1*other.x && y == (-1)*other.y)) { // return false; //} return x> N; std::vector points; points.reserve(N); for(int i=0;i> x >> y; points.push_back(Point(x,y)); } std::multiset m; for(int i=0;i s; for(int j=0;j