A entrada consiste no tempo disponível e na quantidade de combustível necessária para realizar a dobra. Em seguida temos uma série de valores de entrada, um valor para cada unidade de tempo, que significa o fluxo de combustível no tanque.
Na saída deve-se dizer se a dobra foi realizada ou não e em que tempo.
#include <stdio.h>
int main(){
int t, c, fluxoValores, i, dobrou, tempo;
scanf("%d %d", &t,&c);//Ler tempo e quantidade de combustível necessário para realizar a dobra.
c = -c;
i = 0; dobrou = 0; //Seta que ainda não fez a dobra.
for (; i < t; i++){
scanf("%d", &fluxoValores);
c += fluxoValores;
if (!dobrou && c>=0){//Se não dobrou ainda e for maior igual a zero, significa que alcançou o necessário para a dobra, então guardo o tempo.
tempo = i;
dobrou = 1;
}
}
if (dobrou){//Se for um valor positivo, significa que há combustível suficiente para realizar a dobra e diz em que tempo.
printf("sim\n%d\n", tempo+1);
}
else {//Se negativo, o contrário do comentário anterior.
printf("nao\n%d\n", i+1);
}
return 0;
}