P1316 丢瓶盖-二分答案

  • P1316 丢瓶盖
  • 题意:陶陶是个贪玩的孩子,他在地上丢了A个瓶盖,为了简化问题,我们可以当作这A个瓶盖丢在一条直线上。
  • 现在他想从这些瓶盖里找出B个,使得距离最近的2个距离最大,他想知道,最大可以到多少呢?
  • 思路:嗯....明显的最小值最大问题,二分就ok了
  • #include
    using namespace std;
    #define ll long long
    #define maxn 123456
    ll n,a[maxn],m,l,r;
    bool ok(int x)
    {
        int orz=a[0],s=1;
        for(int i=1; i=x)
            {
                orz=a[i];
                s++;
                if(s==m)break;
            }
        if(s==m)return 1;
        return 0;
    }
    int main()
    {
        scanf("%lld%lld",&n,&m);
        for(int i=0; i
  •  

你可能感兴趣的:(二分-排序)