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

P8271 [USACO22OPEN] COW Operations S

洛谷

蒟蒻给一个时间复杂度较劣的线段树做法。

我们可以发现两个字符处理的结果和处理的顺序没有关系,那么我们可以先考虑将每一部分都尝试合成一个或没有字符,再进行合并。

那么我们其实可以考虑使用线段树直接维护每个区间内经过合成剩下了什么,即可判断是否正确。

代码:

#include<bits/stdc++.h>
#define int long long
using namespace std;
char s[200005];
int merge(int a,int b){if(a==0)return b;if(b==0)return a;if(a==b)return 0;if(a==1&&b==2||a==2&&b==1)return 3;if(a==1&&b==3||a==3&&b==1)return 2;if(a==2&&b==3||a==3&&b==2)return 1;
}
struct ST{int c[800005];#define ls p<<1#define rs p<<1|1void pushup(int p){c[p]=merge(c[ls],c[rs]);}void build(int p,int l,int r){if(l==r){if(s[l]=='C')c[p]=1;else if(s[l]=='O')c[p]=2;else c[p]=3;return;}int mid=l+r>>1;build(ls,l,mid),build(rs,mid+1,r);pushup(p);}int query(int p,int l,int r,int L,int R){if(l>=L&&r<=R)return c[p];int mid=l+r>>1;if(mid>=L&&mid<R)return merge(query(ls,l,mid,L,R),query(rs,mid+1,r,L,R));if(mid>=L)return query(ls,l,mid,L,R);return query(rs,mid+1,r,L,R);}
}seg;
signed main(){cin>>s+1;int n=strlen(s+1);seg.build(1,1,n);int q;cin>>q;int l,r;while(q--){cin>>l>>r;int tmp=seg.query(1,1,n,l,r);if(tmp==1)cout<<"Y";else cout<<"N";}return 0;
}
http://www.jsqmd.com/news/65248/

相关文章:

  • P10779 BZOJ4316 小 C 的独立集
  • 街头徒手健身6倒立训练与肩部健康
  • AI语料优化新势力:助力企业抢占智能时代先机的优质服务商推荐
  • 基于MATLAB的位同步提取方法
  • Manim介绍
  • P2475 [SCOI2008] 斜堆
  • CF1970E3 Trails (Hard)
  • 双线性四边形等参单元程序(MATLAB实现)
  • 双线性四边形等参单元程序(MATLAB实现)
  • 102302141_易敏亮第四次数据采集作业
  • 李宏毅机器学习笔记41 - 实践
  • P6706 [COCI 2010/2011 #7] KUGLICE
  • P3596 [POI 2015 R3] 高速公路现代化 Highway modernization
  • AT_arc179_d [ARC179D] Portable Gate
  • AI Browser:我用 CC 做了个桌面版 Manus
  • P3576 [POI 2014] MRO-Ant colony
  • flink 1.20 物化表(Materialized Tables) - 详解
  • P4953 [USACO02FEB] Cow Cycling
  • CF700B Connecting Universities
  • 克服EMD端点效应的齿轮箱故障特征识别方法
  • 大模型算法学习
  • Linux——网络命令和常用服务 - 指南
  • 用 GitHub issue 寫博客很好,但我要放棄了
  • P11580 [CCC2020] Escape Room
  • 北京上门回收名家字画 专访北京丰宝斋负责人徐亚南
  • 用 Astro 重做網站這件事
  • 周边的车间厂房工厂通风降温工业冷风机源头厂家,有热源的车间通风降温/铁皮厂房车间降温/铁皮房车间厂房降温工业冷风机供应商有哪些
  • P6875 [COCI2013-2014#6] KRUŽNICE
  • 美化 BroadcastChannel
  • 2025最新绿色低碳工厂建设五大服务商/厂家推荐!工业智能化升级权威指南,助力企业实现双碳目标与高效生产