什么网站是solr做的,网站建设与管理自考题,photoshop+做网站logo,哪个网站使用vue 做的登录—专业IT笔试面试备考平台_牛客网 1.考虑总长度之和不能超过m#xff0c;2考虑限制每棵树高度不能低于ci#xff0c;如果用二分最短输能截到的高度#xff0c;还要另外去判断#xff0c;是否每棵树mid都能严格大于ci #xff0c;这样容易超时#xff0c;换个角度2考虑限制每棵树高度不能低于ci如果用二分最短输能截到的高度还要另外去判断是否每棵树mid都能严格大于ci 这样容易超时换个角度每棵树我能截到的高度是从a到b,而且最优解是每次只截一个单位长度因此我想要结果越大就要保持我截到的越高越好差分和前缀和将所有能截到的位置统计起来并统计了每个位置有几棵树能截从最高位置遍历累加总数不超过m即可
#includebits/stdc.h
using namespace std;
//#define int long long
typedef long long ll;
const int N2e610;
#define endl \n
ll sum[N],x[N];
int main(){ll n,m;cinnm;int a,b;for(int i1;in;i){cinab;x[b1];//(从b1的高度开始截截完后树的高度刚好是b即刚好大于等于ci)x[a1]--;}ll ans0;sum[0]x[0];for(int i1;i2e610;i){sum[i]sum[i-1]x[i];}for(int i2e610;i0;i--){if(sum[i]){ll xxmin(m,sum[i]);m-xx;ansxx*(2*i-1);//(x*(ii-x)if(m0)break;}}coutansendl;
}