int RussianRec(int a, int b) // implements Russian Peasant Algorithm recursively { if (a == 0) return 0; else if ( 1 == a % 2) return(b+ RussianRec(a >> 1, b) << 1); else return(RussianRec(a >> 1, b) << 1); }
Gives T(0)=0, T(a) = 1+T(a/2). By now, this is familiar.