Find the longest progressive sequence from the given sequence
Comments
Content
//Find the longest progressive sequence from the given sequence. //execute @ http://ideone.com #include<stdio.h> int main() { int inputseq[100]; int length=0,i=0,new_seq_length=0,k=0,longest_prog_seq_index[]={0,0}; scanf("%d",&length); while(i<length) scanf("%d",&inputseq[i++]); for(i=0,new_seq_length=0;i<length-1;i++) { if(inputseq[i]<=inputseq[i+1]) { new_seq_length++; if((i+1)==(length-1)) new_seq_length++; if(((i+1)!=(length-1)) && inputseq[i+1] > inputseq[i+2]) new_seq_length++; } else { if(new_seq_length>longest_prog_seq_index[1]) { longest_prog_seq_index[0]=(i+1)-new_seq_length; // starting index of the latest longest sequence longest_prog_seq_index[1]=new_seq_length; // length of the of the la test longest sequence } new_seq_length = 0; } } if(new_seq_length>longest_prog_seq_index[1]) // if the longest sequence exists at the end of the given sequence { longest_prog_seq_index[0]=(i+1)-new_seq_length; longest_prog_seq_index[1]=new_seq_length; } printf("\n"); for(i=longest_prog_seq_index[0],k=longest_prog_seq_index[1];k>0;i++,k--) printf("%d ",inputseq[i]); }