#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; ll bit[1010]; void update(int pos,ll val) { for(int i=pos;i<=1000;i+=i&-i) bit[i]+=val; } ll psum(int pos) { ll ans=0; for(int i=pos;i>0;i-=i&-i) ans+=bit[i]; return ans; } struct Point { int x,y; bool operator <(Point one)const { return y*one.x<=one.y*x; } }point[1000010]; struct Qu { int x,y,len,no; bool operator <(Qu one)const { return ll(y*one.x)