#include #include struct data{ int valore; int pos_iniziale; int pos_finale; }; int minimo(struct data *P,int n){ int i; int min = P[0].valore; for(i=1;i 0){ C[i].valore = C[i-1].valore + P[i+1]; C[i].pos_iniziale = C[i-1].pos_iniziale; } printf("%d\t%d\t%d\n",C[i].valore,C[i].pos_iniziale,C[i].pos_finale); } int max = minimo(C,n); int inizio =0; int fine =1; for(i=0;i= k ){ max = C[i].valore; inizio = C[i].pos_iniziale; fine = C[i].pos_finale; } } //RIGUARDA NEL CASO IN CUI SIANO TUTTI NEGATIVI printf("\nLa soluzione รจ %d.\nInizia nella posizione %d e finisce in posizione %d\n",max,inizio,fine); free(P); free(C); return 1; }