P3853 [TJOI2007]路标设置 二分答案。放路标时两个路标间为了满足给定的空旷系数要放多个路标,当能整除时得减去一个,因为系数正好为x。
#include
#define int long long
using namespace std;
const int N=2e5+5;
const int inf=0x3f3f3f3f;
int len,n,k,l,r,a[N],ans;
bool check(int x)
{
int num=0;
for(int i=2;ix)
{
num+=(a[i]-a[i-1])/x;
if((a[i]-a[i-1])%x==0)
num--;
}
if(num>k)
return 0;
}
return 1;
}
signed main()
{
cin>>len>>n>>k;
for(int i=1;i>a[i];
sort(a+1,a+n+1);
l=0,r=len;
while(l
关注
打赏