3 ABC411 C ~ E题解

news/2025/10/10 21:14:13/文章来源:https://www.cnblogs.com/michaele/p/19133896

ABC411 C~E 题解

又是赤石的一天

C

有个长度为 \(N\) 的序列,初始序列中每个数为0

每次操作给定 \(pos\) ,将 pos^1 ,然后输出序列中有多少段不连续的 1

用小样例模拟一下可得,设当前颜色为 \(b\) ,左边颜色为 \(a\) ,右边颜色为 \(c\) ,序列中不连续 1 的段数为 \(cnt\)

  • \(a\ne b\ 且\ b \ne c\ \to\ cnt \verb|-=|1\)
  • \(a = b\ 且\ b = c\ \to\ cnt \verb|+=|1\)

D

有一台服务器和 \(N\) 台 PC 。服务器和每台 PC 各持有一个字符串,最初所有字符串都是空的。PC 从 \(1 \sim N\) 编号

给出了 \(Q\) 个操作。每个操作都是以下格式之一:

  • 1 p:用 服务器 的字符串替换 \(p\) 的字符串。
  • 2 p s:在 \(p\) 字符串的末尾添加字符串 \(s\)
  • 3 p:用 \(p\) 的字符串替换 服务器 的字符串。

按照给定的顺序处理所有查询后,找出 服务器 的最终字符串。

一开始我想用 string 水过,但 T 飞了,因为 string 赋值操作的时间复杂度是 O(len) 的,后来查了查,发现 string 的很多操作都是 O(len) 的,以后要慎用

下面是正解

用链表来记录下每个 PC 的尾部字符串的编号,以及每个字符串的父串 (注意不能记录每个节点的子节点,这样在修改尾部时会丢失信息)

code

#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <vector>using namespace std;const int N = 2e5 + 10;int n, m;
int f[N], p[N];
string s[N];int main () {scanf ("%d%d", &n, &m);memset (p, -1, sizeof p);int rt = 0, cnt = 0;for (int i = 1; i <= m; i++) {int op, x;cin >> op >> x;if (op == 1) {p[x] = p[rt];} else if (op == 2) {cin >> s[++cnt];if (p[x] == -1) {p[x] = cnt;f[cnt] = -1;} else {f[cnt] = p[x];p[x] = cnt;}} else {p[rt] = p[x];}}vector <string> ans;for (int i = p[rt]; i != -1; i = f[i]) {ans.push_back (s[i]);}for (int i = (int)ans.size() - 1; i >= 0; i--) {cout << ans[i];}cout << endl;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/934411.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

9 ABC408 D~F 题解

ABC408 D~F 题解 D 题面 给定一个长度为 \(n\) 的由 01 组成的字符串 \(S\),每次操作可以将某个 0 改成 1,或者将某个 1 改成 0 。 求字符串中至多有一个连续 1 串的最小操作次数。 题解 解法1 考场思路,将每个连续…

8 ABC425 G 题解

ABC425 G 题面 给定两个正整数 \(N,M\) 以及一个长度为 \(N\) 的非负整数序列 \(A = A_1, A_2, ..., A_N\)。求 \[\sum_{x = 0}^{M - 1} \min_{1 \le i \le N} (x \oplus A_i) \]\(1 \le N \le 2 \times 10^5\) \(1 \l…

智能防御,安全赋能:AI-FOCUS 滤海AI DLP 化解外部 AI 风险

在“员工把数据投喂给第三方AI”的常见场景下,企业需要一款可在输入与上传瞬时介入的产品。AI-FOCUS 滤海AI DLP 以流式网关为核心,在用户向大模型输入文本与提交文件/图片时进行敏感数据识别,按风险等级执行放行、…

VS code 中代码补全 自动补全函数括号

使用vscode的pylance插件补全python代码的时候无法补全函数的括号 需要在settings.json中添加这一行即可

学习ReAct并使用langgraph实现一个简单的ReAct AI Agent!!

ReAct介绍 要介绍ReAct最好要知道它是从哪来的。 ReAct这个概念出自《REACT : SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS》这篇很牛的论文。 论文地址:https://arxiv.org/abs/2210.03629 我们先来看下这篇…

23种设计模式之【策略模式】-核心原理与 Java 实践 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

abc 408 d~f

这次做了一次 abc,d 做出来了,但是比较麻烦,又用正确方法写了一遍,整理一下 d,e,f,g 有一些超纲。 abc408d 考虑把区间 \(l,r\) 最后变成 1,然后尝试去表示这个时候的答案。 \(sum[i]\) 表示 \(i\) 位置以及之前…

RMQ与LCA学习笔记

在开始之前先提一下RMQ与LCA这两个东西有什么关系 对于一个序列,对它构建出一颗笛卡尔树之后,两个点的LCA就是原序列中这两个点之间的最大值/最小值(取决于建树时的比较方式) 而对于一棵树,求出来他的欧拉序之后,…

the charm of Chinese language

The charm of Chinese language is you use it to read books. when I can read the original books translation as Chinese. I found the original one lets people dizzy, maybe it needs some graphs to make the …

mamba-硬件感知算法

扫描操作由于A B C这些矩阵现在是动态的了,因此无法使用卷积表示来计算它们(卷积核是固定的),因此,我们只能使用循环表示,如此也就而失去了卷积提供的并行训练能力 Mamba通过并行扫描(parallel scan)算法使得最终并…

完整教程:lua代码解析1

完整教程:lua代码解析1pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", &qu…

system表空间丢失部分文件恢复---惜分飞

system表空间丢失部分文件恢复---惜分飞联系:手机/微信(+86 17813235971) QQ(107644445) 标题:system表空间丢失部分文件恢复 作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任…

二维数点

介绍 给出一个二维平面內的若干个点,多次询问某个矩形区域內包含多少个点(边界也算)。又或者,给一个长为 n nn 的序列,多次询问区间 [ l , r ] [l,r][l,r] 中值在 [ x , y ] [x,y][x,y] 内的元素个数。 例题 P190…

gitee和github如何修改仓库名并且保持与原远程仓库的连接?(手把手教学) - 实践

gitee和github如何修改仓库名并且保持与原远程仓库的连接?(手把手教学) - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font…

2025.10.10总结 - A

今天上了节英语,感觉还可以,下雨了,一直在宿舍,感觉很爽。

[20251010]建立完善tpt的prr.sql脚本.txt

[20251010]建立完善tpt的prr.sql脚本.txt--//昨天在测试时不小心输入pr命令时多输入一个r,没想到居然执行了,说明在本目录或者SQLPATH环境目录下存在prr.sql脚本。--//当时忙着处理其他事情,先把这件事情放一放,今…

第十一篇

今天是10月10号,今天只上了一节英语课,学习了新的单词,颇有收获。

[Flutter] Flutter APK构建签名并推广到Github workflow

[Flutter] Flutter APK构建签名并推广到Github workflowFlutter APK构建签名并推广到Github workflow 最近在开发flutter软件的时候发现构建出来的apk在手机上不能直接覆盖更新,会提示签名不一致,但由于我的软件是在…

Windows 电脑安装 XTerminal 1.25.1 x64 版(带安装包下载关键词)​

Windows 电脑安装 XTerminal 1.25.1 x64 版(带安装包下载关键词)​​XTerminal​ 是一款运行在 Windows 系统上的终端工具(类似命令行窗口),通常用于开发者、运维人员或高级用户来执行命令、连接远程服务器、运行…

YOLOv11的神经辐射场(NeRF)辅助训练-(通过合成视角增强内容多样性)

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …