#include #include int a[20], b[20], c[20], r[20], max[6000] , max1[6000]; int main(argc,argv) int argc; char **argv; { int n = 0; int flag = 0, t, k, temp, i, j, c1; double min ; FILE *fp; int q = 0; fp = fopen(argv[1],"rt"); if(fp==NULL) { printf("cannot open file"); exit(0); } while(!feof(fp)) fscanf(fp,"%d", &max[n++]); for (i = 0; i < 5000; i++) for(j=i+1; j< 5000; j++) { if(max[j] < max[i]) { temp = max[i]; max[i] = max[j]; max[j] = temp; } } k = max[n-2]; /* while( i < 5000) { printf("\nmaxi = %d", max[i]); i++; }*/ n = 1; max1[0] = 0; fp = fopen(argv[2],"rt"); if(fp==NULL) { printf("cannot open file"); exit(0); } while(!feof(fp)) fscanf(fp,"%d", &max1[n++]); // printf("\nmaxn2 = %d", max1[n-2]); i = 1; j = 2; while( i < n - 2 && flag != 1) { while(j< n -2 && flag != 1) { if(max1[j] > max1[i]) { flag = 0; j++; } else flag = 1; } i++; } if(flag == 0) { c1 = max1[n-2]; i = 2; while( i < n -2 && flag != 1) { t = max1[i] - max1[i-1]; if ( 5000/k <= t && t <= (5000/k + 1)) i++; else flag = 1; } if(flag == 0) printf("%d\n", c1); else printf("-1\n"); } else printf("-1\n"); }