算法标签:贪心,二分
难度:橙,黄之间
不难发现 ,这道题可以用二分答案的方法解决 。我们首先有区间 [l,r][l,r][l,r] 。令 mid=(l+r)/2mid=(l+r)/2mid=(l+r)/2 。检测两头牛之间的最小距离为 midmidmid 时是否可行 。若是 ,则 l=midl=midl=mid,否则 r=midr=midr=mid 。另外注意最后的操作防止死循环 。
开始时 l=1,r=maxl=1,r=maxl=1,r=max xi x_ixi 。
时间复杂度 O(nO(nO(n maxmaxmax xi)x_i)xi) ,可过 。
By signing up a HFOJ universal account, you can submit code and join discussions in all online judging services provided by us.
Using your HFOJ universal account