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

arc 166 a

#include<bits/stdc++.h>
using namespace std;
using VI = vector<int>;
using ll = long long;
const int mod = 998244353;
//当只有ab的时候,看作把a可以向右移动
//1 - x 是a  1 - y a
//x中的 a 的 下标 <= y 中 a 的下标
//这样就可以通过位移得到
// c - c  这种情况是不可能进行移动的,所以就考虑在 c - c 将x y  分界
//考虑如何变 a , b    首先数量都是对的 , 然后将a尽量放在左边
void solve(){int n;cin>>n;string x,y;cin>>x>>y;bool ok = true;for(int i = 0 ; i < n ; i++){if(x[i] != 'C' && y[i] == 'C'){ok = false;}}x += 'C';y += 'C';int amax = 0 ;//把所有的c变成a的数量int amin = 0 ;//纯a的数量for(int i = 0 ; i <= n ; i++){if(x[i] == 'A'){amax ++;amin ++;}else if(x[i] == 'C'){amax++;}if(y[i] == 'C'){if(amin > 0)ok = false;amax = 0 ;amin = 0 ;}else if(y[i] == 'B'){}else if(y[i] == 'A'){amax--;amin--;amin = max(amin , 0);if(amax < 0) ok = false;}//if(amax < amin) ok = false;}if(ok)cout<<"Yes\n";else cout<<"No\n";}int main(){int t;cin>>t;while(t--){solve();}}

首先将考虑只有ab的时候,可以发现a是可以不断向右移动的

可以证明只有当 X中a的数量 = y中a的数量  且对于 Xk <= Yk  (X中第k个A的下标 小于等于 Y的第k个A下标)

对于存在C

X[i] = Y[i] = C 时的点是不能动的 , 以次为边界,将字符串进行分割,每一段都要分别满足

考虑每一段该如何构造,考虑两种情况是不满足的

1. a太多了 ,  即使c不变a也分不掉,

BAAACAB

BAAABBB

这种情况用amin代表有多少个A没被分配到  ,不断统计X中a的数量  ,  Y中出现就  -1

当分界时候 如果还有a没被分掉,就代表false

2.a+c 太少了,在某一个点就不够分 ,

BABBBCB

BBAAABA

amax统计a + c 的数量, 如果Y中出现 a 就 - 1 ,

如果变成负数,就代表不够分

http://www.lryc.cn/news/187983.html

相关文章:

  • Lua05——Lua基本数据类型
  • 一文3000字从0到1使用pytest-xdist实现分布式APP自动化测试
  • pyqt5:pandas 读取 Excel文件或 .etx 电子表格文件,并显示
  • 【QT】Windows 编译并使用 QT 5.12.7源码
  • php实战案例记录(15)获取GET和POST请求参数
  • k8s-9 ingress-nginx 特性
  • java案例24:模拟百度翻译
  • 汽车烟雾测漏仪(EP120)
  • 【轻松玩转MacOS】安全隐私篇
  • 4.02 用户中心-上传头像功能开发
  • 在Ubuntu 18.04安装Docker
  • Vue-2.1scoped样式冲突
  • Matlab之查询子字符串在字符串中的起始位置函数strfind
  • [游戏开发][Unity]安卓出包报错记录
  • 在两个有序数组中找整体第k小的数
  • Linux 指令心法(十)`head` 显示文本文件的开头部分
  • 前端——Layui的导航栏与tab页联动
  • 一致性哈希算法
  • 深度学习基础之参数量(3)
  • 红队专题-从零开始VC++远程控制软件RAT-C/S-[2]界面编写及上线
  • 磁盘满了对日志打印(Logback)的影响
  • 【算法与数据结构】--算法基础--数据结构概述
  • QECon大会亮相产品,全栈测试平台推荐:RunnerGo
  • 前端小案例-图片存放在远端服务器
  • 【鼠标右键菜单添加用VSCode打开文件或文件夹】
  • 【jvm--堆】
  • 【数据库——MySQL(实战项目1)】(1)图书借阅系统
  • [GXYCTF 2019]Ping Ping Ping题目解析
  • HTTP协议的请求协议和响应协议的组成,HTTP常见的状态信息
  • 【LeetCode】剑指 Offer Ⅱ 第6章:栈(6道题) -- Java Version