Advertisement
timeshifter

count carries

Apr 8th, 2015
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function countCarries(x, y, base) {
  2.     var x_str = x.toString(), y_str = y.toString();
  3.     var l = Math.max(x_str.length, y_str.length);
  4.     var pad = Array(l+1).join('0');
  5.     if (x_str.length < l) x_str = String(pad + x_str).slice(-l);
  6.     else if (y_str.length < l) y_str = String(pad + y_str).slice(-l);
  7.     var carries=0, hasCarry=false;
  8.     for (var i = l - 1; i >= 0; i--) {
  9.         if (+x_str[i] + +y_str[i] + (hasCarry ? 1 : 0) >= base) {
  10.             carries++;
  11.             hasCarry = true;
  12.         }
  13.         else
  14.             hasCarry = false;
  15.     }
  16.     return carries;
  17. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement