Advertisement
Guest User

Untitled

a guest
Apr 20th, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.03 KB | None | 0 0
  1. int main() {
  2.     int len1, len2;
  3.     scanf("%d %d", &len1, &len2);  
  4.  
  5.     int vetor_a[len1], vetor_b[len2];
  6.  
  7.     for (int i = 0; i < len1; i++) {
  8.         scanf("%d", &vetor_a[i]);
  9.     }
  10.     for (int i = 0; i < len2; i++) {
  11.         scanf("%d", &vetor_b[i]);
  12.     }
  13.  
  14.     // binary search
  15.     sort(&vetor_a[0], &vetor_a[len1]);
  16.  
  17.     int ini, fim;
  18.     int meio, cont, key = 0;
  19.        
  20.     while (key < len2) {
  21.         ini = 0;
  22.         fim = len1 - 1;
  23.         cont = 0;
  24.        
  25.         while (ini <= fim) {
  26.             meio = (fim + ini) / 2;
  27.             printf("%d %d %d\n", fim, ini, meio);
  28.             if (vetor_a[meio] > vetor_b[key]) {
  29.                 fim = meio - 1;
  30.             } else if (vetor_a[meio] < vetor_b[key]) {
  31.                 cont = meio + 1;
  32.                 ini = meio + 1;
  33.             } else {    // vetor_a[meio] == vetor_b[key]
  34.                 cont = meio + 1;
  35.                 ini = meio + 1;
  36.             }
  37.         }
  38.         printf("cont: %d ", cont);
  39.         key++;
  40.     }
  41.     printf("\n");
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement