xiaolou296512

关于二分的学习

刚进入大学的时候,感觉二分挺深不可测的,临界点一直都想不清楚,每次在while循环中都不知道是应该<还是<=,迷迷茫茫了许久,终于在代码源wls的视频二分学习中,找到了一个很适合我的模板(我比较笨吧,把题目套模板可以更快更准的解决相关问题);下面是从wls学来的模块

int find(int x){

  int mid,l = 0,r = n+1;

  while(l + 1 < r){

     mid=( l + r ) / 2;

    if( mid 在分界线左边 ) l = mid;

    else r = mid;  

  }

  return l or r;

}

此二分目在寻找一个分界线,在i-j之间必然有一条分界线,使得一边是满足条件的,另一边的不满足条件的,当i+1=j时,i以及左边都是左分界线,j以及j右边都是右边的内容

 

posted on   加了牛奶的咖啡  阅读(12)  评论(0编辑  收藏  举报

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示