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

[题解]G. Puzzle II - The 3rd Universal Cup. Stage 2: Zielona Gra

#8523. Puzzle II

四句话题意

给定两个长由黑白球组成的环,每个环有 \(n\) 个球,且黑球和白球的总数都是 \(n\)

你可以进行最多 \(n\) 次操作,每次操作选定两个环上长度恰为 \(k\) 的区间交换。

最终要使两个环都变成单色的。

请构造这个操作序列,无需最小化操作次数。

Solution

image

上图中,我们做了什么?

我们发现,可以使用两次交换,将 A, B 两球换到了对方的环上,而其他球所在的环不变。

显然必有一个环上的黑球 \(\le\dfrac{n}{2}\),不妨设是第一个环。每次操作将环一的黑球换到环二去,那么操作总数 \(\le 2\times \dfrac{n}{2}=n\)。所以必然能构造出来。

我么将环一上的黑球,环二上的白球记录下来。

然后我们发现,每次交换会让部分球变动一下位置,可以用树状数组找变动的区间,以及区间修改。

找变动区间如果用树状数组上倍增,是 \(O(n\log n)\) 的。

因为不好实现所以在树状数组外二分求的,是 \(O(n\log^2 n)\) 的。

点击查看代码
#include<bits/stdc++.h>
using namespace std;
const int N=3e5+5;
int n,k,c,c1,c2;
string a,b;
inline int lb(int x){return x&-x;}
inline int adj(int x){return (x>n?x-n:(x<1?x+n:x));}
struct BIT{int s[N];inline void chp(int x,int v){for(;x<=c;x+=lb(x)) s[x]+=v;}inline int qry(int x){int a=0;for(;x;x-=lb(x)) a+=s[x];return a;}
}p1,p2;
inline void solve(int x,int y){int z1=p1.qry(x),z2=p2.qry(y);cout<<adj(z1+1)<<" "<<adj(z2-k+1)<<"\n"<<z1<<" "<<adj(z2-k+1)<<"\n";int l=x,r=c1;while(l^r){int mid=(l+r+1)>>1;if(p1.qry(mid)<=z1+k) l=mid;else r=mid-1;}p1.chp(x,-1),p1.chp(l+1,1);l=1,r=y;while(l^r){int mid=(l+r)>>1;if(p2.qry(mid)>=z2-k+1) r=mid;else l=mid+1;}p2.chp(l,1),p2.chp(y,-1);
}//x,y是否修改无影响
signed main(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);cin>>n>>k>>a>>b;for(char i:a) c+=(i=='B');if(2*c>n){//保证A中黑球更少c=n-c;for(char &i:a) i^=1;for(char &i:b) i^=1;}cout<<2*c<<"\n";for(int i=1;i<=n;i++){if(a[i-1]=='B') p1.chp(++c1,i),p1.chp(c1+1,-i);if(b[i-1]=='C') p2.chp(++c2,i),p2.chp(c2+1,-i);}for(int i=1;i<=c1;i++){solve(i,c1-i+1);//x从前往后 y从后往前}//这样就相当于把遍历过的位置在BIT上删掉了return 0;
}
http://www.jsqmd.com/news/26452/

相关文章:

  • 2025年10月精华液推荐榜:淡斑提亮多效精华权威排名发布
  • 2025年10月教育资源好的学习机品牌推荐:家长关注榜对比与实测排行
  • 2025年10月教育资源好的学习机品牌推荐:热门榜数据化评价
  • 2025年10月性价比高的学习机品牌推荐:市场销量榜解析高价值学习方案
  • 2025年读书郎深度解析:26年教育科技长跑的硬实力与隐忧,
  • 2025年读书郎深度解析:26年教育科技长跑的硬实力与隐忧。
  • 2025 年 10 月中央空调厂家推荐排行榜,美的/海信/大金/格力/约克/海尔,商用中央空调,家用中央空调,工业中央空调安装维修服务优质品牌精选
  • 2025年10月精华液排行榜:多肤质适配的精选清单
  • 2025 年 10 月砂磨机厂家推荐排行榜,立式砂磨机,立式纳米砂磨机,小型立式砂磨机公司推荐,高效研磨与稳定性能深度解析
  • 2025年10月郑州遗产继承律师对比榜:真实口碑与案例全解析
  • 2025年10月黄褐斑改善产品推荐榜:五款明星单品多维度对比排行
  • 2025年热门的叉车高压直流继电器厂家最新推荐排行榜
  • 2025年10月郑州遗产继承律师选择榜:五强机构公开数据对比与排行
  • 2025年比较好的不锈钢保温杯优质厂家推荐榜单
  • 2025 年 10 月气动执行器厂家推荐排行榜,齿轮齿条执行器,拨叉式执行器,角行程执行器,不锈钢执行器,三段式执行器,快速执行器,执行器附件,气动执行器附件公司推荐
  • 2025年评价高的汤锅不粘锅最新TOP厂家排名
  • 2025年比较好的五轴零配件机械加工品牌厂家排行榜
  • 2025年评价高的电火花线切割机床厂家推荐及选择参考
  • 07、Linux 材料管理
  • 2025年比较好的后壁半圆管厂家推荐及采购参考
  • 完整教程:Deep Learning|01 RBF Network
  • 个人微信号二次开发api协议,微信个人号开发API接口
  • HTML常规 - ng
  • 2025年知名的铁碳填料厂家最新TOP实力排行
  • 2025年热门的特种纸印刷包装厂家推荐及选择参考
  • 2025年口碑好的定制托辊厂家最新实力排行
  • W3
  • 2025年知名的冲击波驱鸟器高评价厂家推荐榜
  • 2025年热门的EPDM泡棉厂家最新用户好评榜
  • 专家并行和其他并行策略对比