同志们的毒害1_xuhang01
在光老犇的迫害下,高二全体信奥成员 含泪 为自己的战友们出了一套题 xuhang01同学光荣成为第一位迫害人,出了一套 科学且玄学 的卷,照理水一发题解博客 链接: http://218.62.22.209:8080/contest.php?cid=2228 T1 二分求解,二分两棵树之间的最长距离,O(n)验证即可 但是跑之前要先sort一遍...... 1 #include <bits/stdc++.h> 2 using namespace std; 3 int n,m,maxx; 4 int a[100010]; 5 bool check(int x){ 6 int now=a[1],num=0; 7 for(register int i=2;i<=n;i++){ 8 if(abs(a[i]-now)>=x) num++,now=a[i]; 9 if(num==m-1) return true; 10 } 11 return false; 12 } 13 int ef(int l,int r){ 14 if(l==r) return l; 15 int mid=(l+r)/2; 16 if(check(mid+1)) ef(mid+1,r); 17 else ef(l,mid); 18 } 19 int main(){ 20