对于k的值是具有单调性,考虑二分。(单调性一般就先考虑二分),再看一下数据能过。 #include<iostream> #include<algorithm> using namespace std; #define ll long long #define maxn 110000 ll n,k,max1=0; ll L[maxn]; bool check(ll mid)//判断mid是否合法,即所分成的木棍数是否满足k { ll ans=0; for(int i=1;i<=n;++i) { if(L[i]<mid) continue; ans+=L[i]/...