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

Educational Codeforces Round 183 (Rated for Div. 2) 补题

C题没看懂题,其实连续序列不一定要求单一字符,可以ab混合,卡了很长时间
原题链接

C 前缀和

void solve(){int n;cin>>n;string s;cin>>s;s=' '+s;vector<int>a(n+1),pre(n+1,0),suf(n+2,0);forr(i,1,n)a[i]=(s[i]=='a'?1:-1);forr(i,1,n)pre[i]=pre[i-1]+a[i];reforr(i,1,n)suf[i]=suf[i+1]+a[i];if(pre[n]==0)return cout<<0<<endl,void();int ans=n;//前后缀匹配 aababab  pre[i]=-suf[j]map<int,vector<int>>id;forr(i,1,n){id[suf[i]].push_back(i);}id[0].push_back(n+1);forr(i,0,n){if(id.count(-pre[i])){auto p=upper_bound(id[-pre[i]].begin(),id[-pre[i]].end(),i);if(p!=id[-pre[i]].end())ans=min(ans,*p-i-1);}}if(ans==n)cout<<-1<<endl;else cout<<ans<<endl;
}

D 构造 思维 背包dp

0≤k≤n(n−1)20 \le k \le \dfrac{n(n-1)}{2}0k2n(n1)初见端倪,整个数组都逆序,就会有n(n−1)2\dfrac{n(n-1)}{2}2n(n1)(l,r)(l,r)(l,r)数对
lenlenlen个变顺序 消除len∗(len−1)2len*(len-1)\over 22len(len1)个对

const int N=1e3,C=1e6+10,mod=1e9+7,inf=1e9+10;
int dp[N],re[N];//dp[i] i是不包含逆序的(l,r)对数  j是顺序段的长度,会消除j*(j-1)/2个(l,r)
void init(){//背包dp初始化 forr(i,1,N){dp[i]=inf;forr(j,2,N){if(j*(j-1)/2>i)break;if(dp[i-j*(j-1)/2]+j<=dp[i]){dp[i]=dp[i-j*(j-1)/2]+j;re[i]=j;//re[i] 消除i个(l,r)时 要将re[i]长度转化为正序}}}
}
//一个完全逆序列 有n*(n-1)/2个(l,r)对 
//把len个变顺序 消除len*(len-1)/2个对
void solve(){int n,k;cin>>n>>k;int aim=n*(n-1)/2-k;//不包含逆序的l,r //正序一个长len的区间 会消除(len-1)*len/2的(l,r) aim就是要凑出的消除数vector<int>a(n+1);forr(i,1,n)a[i]=n-i+1;forr(i,1,n){int len=re[aim];//凑出aim个不含逆序对l,r 的反转长度if(i+len-1>n)break;reverse(a.begin()+i,a.begin()+i+len);aim-=len*(len-1)/2;i+=len-1;//注意下一步i还会++if(aim<=0)break;}if(aim>0)cout<<0<<endl;else{forr(i,1,n)cout<<a[i]<<' ';cout<<endl;}
}
signed main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);int _=1;init();cin>>_;while (_--){solve();}return 0;
}

E 线段树

有空再补…

http://www.dtcms.com/a/454915.html

相关文章:

  • 网站做跳转的要求wordpress
  • 图片做视频在线观看网站怎么建设维护学校的网站
  • 怎么查看网站哪个公司做的深圳比较好的vi设计公司
  • 计算机领域可以划分成几个模块?
  • 淮安网站建设设计制作郑州商城网站开发
  • 怎么做企业曝光引流网站wordpress火车头自动分类
  • 求一个全部用div做的网站wordpress主题首页修改
  • 网站 png逐行交错wordpress新闻404
  • 湖北网站设计青龙桥网站建设
  • 中山快速做网站公司h5棋牌源码之家
  • tp5网站文档归档怎么做佛山网站建设优化制作公司
  • 菜鸟学做网站的步骤网页设计师培训快选去找曼奇立德
  • 建设网站应该注意些什么国际摄影网站
  • 不同企业的网络营销网站举报网站怎么做
  • 快递网站建设需求分析网站免费空间哪个好
  • 赤城县城乡建设局网站网站建设中 页面源代码
  • Servlet 线程安全测试程序浏览器输出全是 <h1>null</h1>,而不是 我想要的内容
  • 太原定制网站制作流程90设计网站怎么绑定手机号
  • 学校校园网站网站开发地图导航页面
  • 销售网站页面特点网页设计师培训和继续教育的机会
  • 哪个网站能接施工图来做如何制作自己的网站二维码
  • 织梦新闻门户网站模板可信网站认证有什么用
  • API实例分享:获取淘宝商品标题价格店铺详情图
  • W3C SOAP 活动
  • 吉林省建设厅网站专家网站结构 seo
  • 中国数据网站空间seo具体是什么
  • 4.1 > Linux 文件/目录权限管理【理论】
  • 验证码网站搭建小程序商城多少钱
  • 又一个wordpress站点网店代运营合同
  • 做网站 证书 浏览器asp.net网站改版 旧网站链接