Codeforces Round 943 (Div. 3)

A


O ( x ) O(x) O(x) 枚举即可,我也是这么做的,但是可以利用以下的性质来 O ( 1 ) O(1) O(1) 解决问题。

首先,gcd(a, b) = gcd(a-b,b), 其中 a ≥ b a\geq b ab

其次,gcd(x,x-1)=1, 其中 x ≥ 1 x\geq 1 x1

利用这两个性质, gcd(a,b)+b=gcd(a-b,b)+b $\leq $ a-b+b ≤ \leq a

我们直接令 b=a-1 既就可以取得答案的上界了。


B


您的任务是确定最大可能的数字 k ,使得长度为 k 的字符串 a 的前缀是字符串 b 的子序列。

我写了个二分,因为 k 显然具有单调性,check 的逻辑就是从前往后能取就取。

std : 定义 d p i dp_i dpi 为 a 的最长前缀,且其作为子序列包含在 b 1 , ⋯   , b i b_1,\cdots,b_i b1,,bi 之中

状态转移 : b i b_i bi 是否能更新最长前缀

if b i = a d p i + 1 b_i=a_{dp_i+1} bi=adpi+1 , 则 d p i = d p i − 1 + 1 dp_i=dp_{i-1}+1 dpi=dpi1+1

else d p i = d p i − 1 dp_i=dp_{i-1} dpi=dpi1

答案 : d p m dp_m dpm

int n, m;
string a, b;

void solve(){
    cin >> n >> m >> a >> b;
    a = ' ' + a, b = ' ' + b;
    vector<int> dp(m + 10);
    dp[1] = (b[1] == a[1]);
    for(int i = 2; i <= m; i ++){
        if(dp[i - 1] + 1 <= n && b[i] == a[dp[i - 1] + 1]) dp[i] = dp[i - 1] + 1;
        else dp[i] = dp[i - 1];
    }
    cout << dp[m] << '\n';
}

C


( a + b ) (a+b) (a+b) % a = b a=b a=b , 其中 0 ≤ b < a 0\leq b< a 0b<a

根据这个性质进行构造


D


每位选手回位于一个循环内,任何一个位置停下都可能是最优选择。

O ( n ) O(n) O(n) 预处理循环 + O ( n ) O(n) O(n) 枚举哪个位置停下能取得最大得分


E


  • Hint 1

对于 n × n n\times n n×n 的矩形来说,曼哈顿距离取值为 [ 0 , 2 ∗ n − 2 ] [0,2*n-2] [0,2n2]

  • Hint2

我们发现早在主对角元上放 n − 2 n-2 n2 个元素, ( n − 1 , n ) (n-1,n) (n1,n) ( n , n ) (n,n) (n,n) 上放元素即可满足条件。

主对角元与 ( n − 1 , n ) (n-1,n) (n1,n) 产生所有奇数距离,与 ( n , n ) (n,n) (n,n) 产生所有偶数距离

(确实想不到啊,构造题就是这样,没办法的,该打个表试试或者直接放弃的)


G1

能做出来的,脑子抽了,又反向哈希了一遍,本来判定相等就可以了,写成判定相等且回文了,改了一下就过了,有点可惜。

题目要求把字符串分成 k 段,问 k 个子串的最长 LCP。

显然长度满足单调性,我们二分一下这个长度 x ,check 的时候看看有几个不重叠的 s.substr(1, x) , 只要超过 k 个就能找到一种分割方式。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

docker如何生成springboot镜像

1、在springboot的jar包所在的目录下创建Dockerfile文件&#xff0c;此案例的目录为/usr/java Dockerfile的文件内容如下&#xff1a; FROM openjdk:8 LABEL author"zengyanhui" LABEL email"1181159889qq.com" WORKDIR /usr/java/springbootdemo COPY s…

TCP的特性(4)

TCP特性 拥塞控制(可靠性机制)延迟应答(效率机制)捎带应答(效率机制)面向字节流(粘包问题)TCP异常机制小结 拥塞控制(可靠性机制) 虽然TCP引入了滑动窗口,能够高效可靠的传输大量数据,但是在开始阶段就发送大量数据,可能引起一系列问题. TCP引入了慢启动机制,先发少量的数据,判…

PDF Shaper Ultimate 免安装中文破姐版 v14.1

软件介绍 PDF Shaper是一套完整的多功能PDF编辑工具&#xff0c;可实现最高的生产力和文档安全性。它允许你分割&#xff0c;合并&#xff0c;水印&#xff0c;署名&#xff0c;优化&#xff0c;转换&#xff0c;加密和解密您的PDF文件&#xff0c;也可插入和移动页&#xff0…

RabbitMQ知识点总结和复习

之前项目中用到RabbitMQ的场景主要是订单信息的传递&#xff0c;还有就是利用RabbitMQ的死信队列属性设置&#xff0c;实现延迟队列效果&#xff0c;实现超时支付取消功能&#xff0c;以及在两个不同项目中传递数据等场景。 最近几年的工作中都是一直用的RabbitMQ&#xff0c;…

【C++】深入剖析C++11 initializer_list 新的类功能 可变模板参数

目录 一、std::initializer_list 1、std::initializer_list是什么类型 2、std::initializer_list 的应用场景 ①给自定义容器赋值 ② 传递同类型的数据集合 二、新的类功能 1、默认成员函数 2、关键字default 3、关键字delete 三、可变参数模板 一、std::initialize…

关于Linux的“三十年河东,三十年河西”的思考

目录 一、何为“三十年河东&#xff0c;三十年河西”&#xff1f; 二、Linux系统的发展历程简介 三、Linux家族 四、Linux发展分支 五、关于对Linux发展的回顾 一、何为“三十年河东&#xff0c;三十年河西”&#xff1f; “三十年河东&#xff0c;三十年河西”原义是三十…

OpenWRT有线桥接部署教程

前言 之前咱们讲到OpenWRT部署WAN实现PPPoE拨号上网和自动获取IP模式上网的办法&#xff1a; OpenWRT设置PPPoE拨号教程 OpenWRT设置自动获取IP&#xff0c;作为二级路由器 这一次&#xff0c;咱们尝试用OpenWRT有线桥接上一级路由器的教程。 可能有小伙伴敏锐地发现了&am…

20232803 2023-2024-2 《网络攻防实践》实践八报告

目录 1. 实践内容2. 实践过程2.1 动手实践任务一2.2 动手实践任务二&#xff1a;分析Crackme程序2.2.1 crackme1.exe2.2.2 crackme2.exe 2.3 分析实践任务一2.4 分析实践任务二 3. 学习中遇到的问题及解决4. 学习感悟、思考等 1. 实践内容 动手实践任务一&#xff1a;对提供的r…

【Python编程实践1/3】模块

目录 目标 模块 import ​编辑 代码小结 题目 from...import 随机模块 代码小结 randint函数 骰子大战 choice函数 总结 目标 拧一颗螺丝&#xff0c;只会用到螺丝刀&#xff1b;但是修一台汽车&#xff0c;需要一整套汽修的工具。函数就像螺丝刀&#xff0c;可以帮…

Go实战训练之Web Server 与路由树

Server & 路由树 Server Web 核心 对于一个 Web 框架&#xff0c;至少要提供三个抽象&#xff1a; Server&#xff1a;代表服务器的抽象Context&#xff1a;表示上下文的抽象路由树 Server 从特性上来说&#xff0c;至少要提供三部分功能&#xff1a; 生命周期控制&…

FIFO Generate IP核使用——Native读写接口信号详解

Native FIFO接口信号是用于FIFO IP核与外部电路进行通信的信号。当FIFO支持独立的写和读时钟时&#xff0c;这些信号可以包括标准端口和可选端口。 1 当FIFO具有独立时钟时的接口信号 当FIFO具有独立的时钟时&#xff0c;其接口信号会相应地有所变化。特别是关于复位信号rst…

Hibernate入门学习

目录 1、ORM思想概述 2、自定义ORM框架 3、第一个Hibernate程序开发步骤&#xff08;重要&#xff09; 1&#xff09;下载完整包 2&#xff09;创建项目&#xff0c;导入所需jar包 3&#xff09;建立student表 4&#xff09;创建和student表对应的Student实体类 5&…

postman中百度preview无法加载的解决方案

问题 在使用postman关联时&#xff0c;百度接口与天气接口已使用glb_city关联&#xff0c;但在百度接口发送请求时&#xff0c;发现preview无法加载 解决方案 1、进入百度 百度全球领先的中文搜索引擎、致力于让网民更便捷地获取信息&#xff0c;找到所求。百度超过千亿的中…

基于Springboot的民航网上订票系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的民航网上订票系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构…

vue3 + ts 快速入门(全)

文章目录 学习链接1. Vue3简介1.1. 性能的提升1.2.源码的升级1.3. 拥抱TypeScript1.4. 新的特性 2. 创建Vue3工程2.1. 基于 vue-cli 创建2.2. 基于 vite 创建&#xff08;推荐&#xff09;vite介绍创建步骤项目结构安装插件项目结构总结 2.3. 一个简单的效果Person.vueApp.vue …

11个2024年热门的AI编码助手

大家好&#xff0c;人工智能&#xff08;AI&#xff09;领域的大型语言模型&#xff08;LLMs&#xff09;已经逐渐发展成熟&#xff0c;并且深入到了我们日常的工作当中。在众多AI应用中&#xff0c;编码助手尤为突出&#xff0c;是开发人员编写更高效、准确无误代码的必备辅助…

docker原理

Docker原理 在前面我们学习了Docker&#xff0c;接下来我们探究一下Docker的底层技术原理 Linux 命名空间&#xff08;namespace&#xff09;、控制组&#xff08;cgroups&#xff09;和 联合文件系统&#xff08;UnionFS&#xff09; 三大技术支撑了目前 Docker 的实现&…

STM32入门学习之DMA

1.直接存储访问DMA(Direct Memory Access)&#xff1a;DMA传输不需要CPU的参与&#xff0c;直接在内存和I/O设备间开辟了一条新的数据传输通道&#xff0c;不仅提高数据传输的速率&#xff0c;还因为不需要CPU的干预&#xff0c;从而提高了CPU的利用率。(注&#xff1a;文中的资…

OpenCV如何在图像中寻找轮廓(60)

返回:OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇&#xff1a;OpenCV如何模板匹配(59) 下一篇 :OpenCV检测凸包(61) 目标 在本教程中&#xff0c;您将学习如何&#xff1a; 使用 OpenCV 函数 cv::findContours使用 OpenCV 函数 cv::d rawContours …

基于SSM的校园短期闲置资源置换平台(有报告)。Javaee项目。ssm项目。

演示视频&#xff1a; 基于SSM的校园短期闲置资源置换平台&#xff08;有报告&#xff09;。Javaee项目。ssm项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#xff0c;通过…
最新文章