Vous devez vous connecter pour exécuter votre code.

Recherche fichier acces direct

Implementez la recherche dichotomique dans un fichier binaire d'entiers tries.

#include <stdio.h> long binary_search_file(const char *filename, int target) { FILE *f = fopen(filename, "rb"); if (!f) return -1; fseek(f, 0, SEEK_END); long n = ftell(f) / sizeof(int); long lo = 0, hi = n - 1; while (lo <= hi) { long mid = (lo + hi) / 2; fseek(f, mid * sizeof(int), SEEK_SET); int val; fread(&val, sizeof(int), 1, f); if (val == target) { fclose(f); return mid; } if (val < target) lo = mid + 1; else hi = mid - 1; } fclose(f); return -1; } int main() { int n; scanf("%d", &n); int arr[1000]; for (int i = 0; i < n; i++) scanf("%d", &arr[i]); printf("%d\n", binary_search_file(arr, n)); return 0; }