Hola compañeros, estoy empezando resolviendo problemas con DP y
necesito una mano con este prolema
http://acm.timus.ru/problem.aspx?space=1&num=1009
Respuesta: Wrong Answer...
Aun sin encontrar la falla...
En esta funcion estoy precalculando los resultados para las distintas
bases con sus cantidades determinadas de digitos
void generar(long baseX){
....v[0][baseX] = baseX - 1; //Para 0 digitos... creo que innecesario
....v[1][baseX] = baseX - 1; //Para 1 digito
//y para 2 digitos...
....v[2][baseX] = (baseX - 1)*v[1][baseX] + v[1][baseX];
//y para los demas digitos
....for(long k = 3; k <= MAX_BASE; ++k)
........v[k][baseX] = (baseX-1)*(v[k-1][baseX] + v[k-2][baseX]);
}
Donde
v[NumeroDeDigitos][Base] me almacena en las filas el numero de digitos
y en las columnas su respectiva base.
Y algunos casos de prueba....
n=2 k=10 ==> 90
n=3 k=10 ==> 441
n=4 k=10 ==> 3479
n=5 k=10 ==> 27440