Run ID | Author | Problem | Lang | Verdict | Score | Time | Memory | Code Length | Submit Time |
---|---|---|---|---|---|---|---|---|---|
347553 | admin_cgn | 【C6-8】二分查找 | C++ | Runtime Error | 0 | 0 MS | 80 KB | 745 | 2025-09-13 13:58:12 |
#include <iostream> using namespace std; const int MAX_SIZE = 100000005; long long a[MAX_SIZE]; // 将数组移出全局区避免栈溢出 int main() { long long n; scanf("%lld", &n); // 统一使用scanf读取n,注意使用%lld for (int i = 1; i <= n; i++) { scanf("%lld", &a[i]); } long long x; scanf("%lld", &x); // 使用scanf读取x int l = 1, r = n, m; while (l <= r) { m = (l + r) / 2; if (a[m] == x) { printf("%d", m); // 输出找到的位置m return 0; } else if (a[m] < x) { l = m + 1; } else { r = m - 1; } } printf("-1"); // 未找到输出-1 return 0; }