优美的二分模型
Posted smartljy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了优美的二分模型相关的知识,希望对你有一定的参考价值。
在序列中寻找大于等于x的最小值
int findl(int x) { int l = 1, r = n + 1; while(l < r) { int mid = l + r >> 1; if(a[mid].pos >= x) r = mid; else l = mid + 1; } //mid取不到r,而r一开始取n+1有利于查找正确答案 }
在序列中寻找小于等于x的最大值
int findr(int x) { int l = 0, r = n; while(l < r) { int mid = l + r + 1 >> 1; if(a[mid].pos<= x) l = mid; else r = mid - 1; } //原理同上 }
以上是关于优美的二分模型的主要内容,如果未能解决你的问题,请参考以下文章
使用片段时 Intellij 无法正确识别 Thymeleaf 模型变量