Advertisement
Guest User

Untitled

a guest
Dec 15th, 2019
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.81 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <limits.h>
  3.  
  4. int minprzek (int A[], int B[], int n)
  5. {
  6.     int l = 0, p = n - 1, min = INT_MAX, it = -1;
  7.     while (l < p)
  8.     {
  9.         int s = (l + p) / 2;
  10.         int x = A[s], y = B[s];
  11.         if (x * x + y * y < min)
  12.         {
  13.             it = s;
  14.             min = x * x + y * y;
  15.         }
  16.         if (A[s] < B[s]) l = s + 1;
  17.         else p = s;
  18.     }
  19.  
  20.     l = it; p = n - 1;
  21.     while (l < p)
  22.     {
  23.         int s = (l + p + 1) / 2;
  24.         int x = A[s], y = B[s];
  25.         if (x * x + y * y < min)
  26.         {
  27.             it = s;
  28.             min = x * x + y * y;
  29.         }
  30.         if (A[s] > B[s]) p = s - 1;
  31.         else l = s;
  32.     }
  33.     return it;
  34. }
  35.  
  36. int main ()
  37. {
  38.     int A[] = {0}, B[] = {0}, n = 1;
  39.     int k = minprzek (A, B, n);
  40.     printf ("%d", k);
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement