static int _min(int x, int y){ return x < y? x: y; } static int _max(int x, int y){ return x > y? x: y; } static int _div(int x, int y){ /* y is assumed to be non-negative */ if(x < 0)return (x - (y-1)) / y; return x / y; } static int _rem(int x, int y){ /* y is assumed to be non-negative */ if(x < 0)return (y - 1) + (x - (y-1)) % y; return x % y; }