Advertisement
Dim_ov

Algo-class Theory problem 2.

Mar 22nd, 2012
151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.61 KB | None | 0 0
  1. //#define DEBUG
  2. #include<stdio.h>
  3.  
  4. int* find_max(int* a, int n)
  5. {
  6.     if(n == 1)return a;
  7.     if(n == 2)
  8.     {
  9.         if(a[0]>a[1])return a;
  10.         return a+1;
  11.     }
  12.     int mid = n/2;
  13.     if(a[mid] - a[mid-1] < 0) return find_max(a,n/2);
  14.     return find_max(a+n/2, n-n/2);
  15. }
  16.  
  17. int main()
  18. {
  19. #ifdef DEBUG
  20.     freopen("input.txt","r",stdin);
  21.     freopen("output.txt","w",stdout);
  22.     freopen("err.txt","w",stderr);
  23. #endif
  24.     int n;
  25.     scanf("%d",&n);
  26.     int a[10000];
  27.     int i;
  28.     for(i=0;i<n;i++)scanf("%d",&a[i]);
  29.     int *iMax = find_max(a,n);
  30.     printf("%d\n%d\n",iMax-a+1,*iMax);
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement