rendered paste body#include <stdio.h>long is_seen[100004];long input[100004];int main(){ long n, i, j, k, max_so_far=0, max; scanf("%ld", &n); for(i = 1 ; i <= n ; i++) scanf("%ld", &input[i]); max=i=j=1; for( ; i <= (n-max_so_far+1) ; i++) { for( ; j<=n && is_seen[input[j]]==0 ; j++) { is_seen[input[j]]=j; while(is_seen[max]) max++; max_so_far>?=max; } if(j>n) break; else { for(k=i ; k<is_seen[input[j]] ; k++) { is_seen[input[k]]=0; max<?=input[k]; } i=is_seen[input[j]]; is_seen[input[j]]=0; } } printf("%ld\n", max_so_far-1); return 0;}