当前位置: 首页 > wzjs >正文

灵台县住房和城乡建设局网站推广工具

灵台县住房和城乡建设局网站,推广工具,洛可可设计公司logo,wordpress 简书模板AB略 C 答案没有单调性,无法用二分答案写。b比a多的得分s1*0s2*1.......sn*(n-1),s代表这一段中b比a多的数量。这里s的处理可以想到用前缀和来,于是得到(s1-0)*0(s2-s1)*1(s3-s2)*2......(sn-sn-1)*(n-1)-s1-s2-s3.....sn*(n-1)&#xff0c…

AB略

C

答案没有单调性,无法用二分答案写。b比a多的得分=s1*0+s2*1+.......+sn*(n-1),s代表这一段中b比a多的数量。这里s的处理可以想到用前缀和来,于是得到(s1-0)*0+(s2-s1)*1+(s3-s2)*2......+(sn-sn-1)*(n-1)=-s1-s2-s3.....+sn*(n-1),这里还是没办法确定n的值,毕竟sn*(n-1)很难确定。于是可以想到后缀和。(s1-s2)*0+(s2-s3)*1+(s3-s4)*2.....sn*(n-1)=s2+s3+....+sn。预处理出所有位置的后缀和降序排序,大于k停止即可。

#include <bits/stdc++.h>
#define int long long
using namespace std;
const int N=2e5+10;
int T,n,k,s[N],sum;
char c[N];
void init()
{sum=0;
}
void solve()
{cin>>n>>k;init();for(int i=1;i<=n;i++)cin>>c[i];s[n+1]=0;for(int i=n;i>=1;i--){if(c[i]=='1') s[i]=s[i+1]+1;else s[i]=s[i+1]-1;}sort(s+2,s+n+1);for(int i=n;i>=2;i--){sum+=s[i];if(sum>=k) {cout<<n-i+2<<endl; return ;}}cout<<-1<<endl;
}
signed main()
{std::ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);cin>>T;while(T--) solve();
}

D

对于每一段来说,找到所有完全包含这一段的段的交集再减去这一段剩下的整数数量。先将左端点升序相等时再右端点降序排序,这样按顺序处理每个段时,可以保证它的所有预言段都处理完了,利用set可知道它的所有预言段右端点的最小值,减去这个段的右端点。在按照这个逻辑处理左端点,左右相加就是答案。

#include <bits/stdc++.h>
#define int long long
using namespace std;
const int N=2e5+10;
int T,n,ll[N],rr[N],bj[N];
struct node{int l,r,id;
}a[N],b[N];
bool cmp(node x,node y)
{if(x.l==y.l) return x.r>y.r;return x.l<y.l;
}
bool cmp1(node x,node y)
{if(x.r==y.r) return x.l<y.l;return x.r>y.r;
}
void init()
{for(int i=1;i<=n;i++)ll[i]=rr[i]=bj[i]=0;
}
void solve()
{cin>>n;init();multiset<int> s;for(int i=1;i<=n;i++){cin>>a[i].l>>a[i].r;a[i].id=i;b[i].l=a[i].l;b[i].r=a[i].r;b[i].id=i;}if(n==1) {cout<<0<<endl; return ;}sort(a+1,a+n+1,cmp);for(int i=2;i<=n;i++)if(a[i].l==a[i-1].l&&a[i].r==a[i-1].r) bj[a[i].id]=bj[a[i-1].id]=1;s.insert(a[1].r);for(int i=2;i<=n;i++){multiset<int>::iterator it;it=s.lower_bound(a[i].r);if(it!=s.end()) rr[a[i].id]=*it-a[i].r;s.insert(a[i].r);}sort(b+1,b+n+1,cmp1);s.clear();s.insert(-b[1].l);for(int i=2;i<=n;i++){multiset<int>::iterator it;it=s.lower_bound(-b[i].l);if(it!=s.end()) ll[b[i].id]=*it+b[i].l;s.insert(-b[i].l);}for(int i=1;i<=n;i++)if(bj[i]) cout<<0<<endl;else cout<<ll[i]+rr[i]<<endl;
}
signed main()
{std::ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);cin>>T;while(T--) solve();
}

http://www.dtcms.com/wzjs/474746.html

相关文章:

  • 长沙建站网站盘多多百度网盘搜索引擎
  • 如何在百度上打广告关键词排名优化软件价格
  • 茶叶有什么网站可以做推广百度广告公司联系方式
  • 如何做资金盘网站公众号免费推广平台
  • 办公用品网站建设市场定位关键词排名查询api
  • 中企动力主要是干嘛的站内优化怎么做
  • 深圳搭建p2p网站想学销售去哪培训
  • 微商城网站建设免费的编程自学网站
  • 网站公示如何做链接长春网站优化咨询
  • 企业手机网站建设需要注意哪些一个好的产品怎么推广
  • 做企业网站服务商seo成都培训
  • sae 网站备案信息资源猫
  • 南联企业网站建设浙江seo
  • 外贸网站源代码网站关键词全国各地的排名情况
  • 商城网站开发流程百度学术论文官网入口
  • 怎么查看网站备案信息免费注册网站有哪些
  • 绵阳网站建设aso应用优化
  • 广西建设部投诉网站关键词优化怎么优化
  • 网站建设新闻市场推广方案和思路
  • 做ppt接单的网站外贸网站平台哪个好
  • 网站建设木马科技广告图片
  • 怎么做教育网站网站百度seo关键词优化
  • 网站建设建议书买淘宝店铺多少钱一个
  • 学校教务网站的设计与实现千锋教育前端学费多少
  • 网站开发用原生驾校推广网络营销方案
  • 网站建设的客户需求调查与分析短链接生成
  • wordpress abowman百度seo软件曝光行者seo
  • t型布局网站怎么做最优化方法
  • 外贸建站主机企业站seo
  • 北京网站定制开发最新的全国疫情