public class Solution {
public intDivide(int dividend,int divisor){
bool isPositive=true;if(dividend<0&&divisor>0|| dividend>0&&divisor<0){
isPositive=false;}long ldividend = Math.Abs((long)dividend);long ldivisor=Math.Abs((long)divisor);long result=divide(ldividend,ldivisor);if(result>int.MaxValue){return isPositive?int.MaxValue:int.MinValue;}return isPositive?(int)result:-(int)result;}
public longdivide(long dividend,long divisor){if(dividend<divisor)return0;long sum=divisor;long result=1;while(dividend>sum+sum){
sum +=sum;
result +=result;}return result+divide(dividend-sum,divisor);}}