Problema del lenguaje C al cruzar el río
Construya una función updateMin. La función de la función es calcular el número de piedras que la rana necesita pisar para saltar de X a l si el resultado es menor que el número mínimo calculado actualmente curMin. , se devolverá el resultado del cálculo; si es mayor o igual a curMin, luego devuelva y calcule recursivamente el valor mínimo final. Puedes recortarlo. Si durante el proceso recursivo, el número de piedras pisadas en stepStNum es mayor o igual a curMin, entonces puede volver a curMin y no es necesario continuar con el cálculo.
# incluir & ltstdio.h & gt
void main()
{
int x, s, t, l, curMin, stoneNum, I, temp
int piedra loc[100]= { 0 };
int stepStNum = 0
x = 0; p>
p>
printf("Ingrese la longitud del puente:");
scanf("%d ", & ampl);
printf( "Ingrese el rango de distancia:" );
scanf("%d%d ", & amps & t);
printf("Ingrese el número de piedras:"
scanf("%d ",&stone num);
for(I = 0;i<stoneNumi++)
{
scanf("%d ", &stone loc[I]);
}
curMin = l;
curMin = updateMin(x, stepStNum, s, t, l, piedraLoc, piedraNum, curMin);
printf ("%d ", curMin
}
int updateMin(int x, int); stepStNum, int s, int t, int l, int stoneLoc[], int stoneNum, int curMin)
{
int I = 0;
if (x & gt ;= l)
{
regresar stepStNum
}
for(I = 0;i<stoneNumi++) p>
{
if (stoneLoc[i] == x)
{
stepedstnum++;
Romper;
}
}
if(stepedStNum & gt; = curMin)
{
return curMin p>
}
for(I = t;i>= s;i-)
{
curMin = updateMin(x+i, stepStNum , s, t, l, piedraLoc, piedraNum, curMin
}
Devuelve curMin
}