提交记录 16532
| 提交时间 |
评测时间 |
| 2021-10-01 16:09:01 |
2021-10-01 16:09:05 |
int binary_search(const unsigned *a, int n, unsigned x)
{
int l = 0, r = n - 1, mid;
if (r - l > 200) {
mid = l + (r - l) * (x - a[l]) / (a[r] - a[l]);
while (l < r - 200) {
if (x > a[mid]) l = mid;
else r = mid;
mid = l + (r - l) * (x - a[l]) / (a[r] - a[l]);
}
}
else mid = (l + r) / 2;
while (l < r - 1) {
if (x > a[mid]) l = mid;
else r = mid;
mid = (l + r) / 2;
}
if (x > a[mid]) {
while (mid < n) {
if (x > a[mid]) mid++;
}
return mid;
}
else {
if (x == a[mid]) return mid;
while (mid >= 0) {
if (x < a[mid]) mid--;
}
return mid;
}
}
| Compilation | N/A | N/A | Compile OK | Score: N/A | 显示更多 |
| Testcase #1 | 1 ms | 8 KB | Time Limit Exceeded | Score: 0 | 显示更多 |
Judge Duck Online | 评测鸭在线
Server Time: 2026-03-19 01:40:10 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠