Mi solución al primer reto:
Código C++:
Ver originalunsigned int comb(unsigned int n, unsigned int k)
{
if(k > n) return 0;
if (k == 0) return 1;
return (k > n/2) ? comb(n, n - k) : n * comb(n - 1, k - 1) / k;
}
La solución al segundo esta estuvo medio complicada:
Código C++:
Ver originaldouble promedioCollatz(unsigned num)
{
unsigned y = num;
if (y <= 1) return 0;
return (y % 2 == 0) ? 1 + promedioCollatz( y / 2 )
: 1 + promedioCollatz( 3 * y + 1 );
}
Saludos