蓝桥杯 灯笼大乱斗【算法赛】

embedded/2025/3/4 11:18:44/

问题描述

元宵佳节,一场别开生面的灯笼大赛热闹非凡。NN 位技艺精湛的灯笼师依次落座,每位师傅都有相应的资历值,其中第 ii 位师傅的资历值为 AiAi​。从左到右,师傅们的资历值逐级递增(即 A1<A2<⋯<ANA1​<A2​<⋯<AN​)。同时,每位师傅都带来了自己精心制作的灯笼,其亮度值依次为 B1,B2,⋯ ,BNB1​,B2​,⋯,BN​。

大赛中,主持人会选择一个区间 [L,R][L,R](1≤L<R≤N1≤L<R≤N),让这个区间内的师傅们进行两两比拼,构成一场“灯笼大乱斗”。

比拼规则如下:假设在区间 [L,R][L,R] 中,由师傅 ii 和师傅 jj(L≤i<j≤RL≤i<j≤R)进行对决。对决双方分别持有自己的灯笼。

  • 如果师傅 ii 的灯笼亮度 BiBi​ 小于师傅 jj 的灯笼亮度 BjBj​,则双方交换灯笼(相应地,如果 Bi≥BjBi​≥Bj​,则不交换)。
  • 双方最终的得分计算方式为:资历值 + 持有灯笼的亮度。得分高者获胜,得分相同则平局。

由于在比赛中,资历深的师傅输给资历浅的师傅,将会有损颜面。因此,为了避免这种情况发生,主持人需要选择必胜区间。

必胜区间定义:如果一个区间内任意两位师傅进行比赛,资历值高的师傅都必定能够获胜,则称该区间为必胜区间。

现在,请你帮主持人算算,必胜区间共有多少个?

输入格式

第一行包含一个整数 NN (1≤N≤105)(1≤N≤105),表示灯笼师傅的数量。

第二行包含 NN 个整数 A1,A2,…,ANA1​,A2​,…,AN​ (1≤Ai≤109)(1≤Ai​≤109),表示每位师傅的资历值,满足 A1<A2<⋯<ANA1​<A2​<⋯<AN​。

第三行包含 NN 个整数 B1,B2,…,BNB1​,B2​,…,BN​ (1≤Bi≤109)(1≤Bi​≤109),表示每位师傅的灯笼亮度值。

输出格式

输出一个整数,表示必胜区间的总数量。

样例输入

3
1 3 5
3 4 1

样例输出

1

 [L,R]必胜,只需要看R+1和R的关系就好了,如果R+1能赢R,则R+1必胜[L,R]

具体证明不会

#include <iostream>
using namespace std;
int main()
{int n;cin>>n;int an[n], bn[n], cn[n];for(int i=0; i<n; i++){cin>>an[i];} for(int i=0; i<n; i++){cin>>bn[i];} long long int num = 1, res = 0;for(int i=1; i<n; i++){if(bn[i] > bn[i-1]){if(an[i] - bn[i] > an[i-1] - bn[i-1]){res += num;++num;}else{num = 1;}}else{if(an[i] + bn[i] > an[i-1] + bn[i-1]){res += num;++num;}else{num = 1;}}}cout<< res;return 0;
}

结果res类型必须为longlongint ,int是不行的


http://www.ppmy.cn/embedded/169901.html

相关文章

淘天集团算法岗-计算机视觉(T-Star Lab)内推

熟悉计算机视觉、机器学习、图像/视频分析与处理、多模态内容理解、AIGC等相关领域技术和应用&#xff1b; 具备极佳的工程实现能力&#xff0c;熟练掌握C/C、Java、Python等至少一门语言&#xff1b; 学习能力强&#xff0c;对新事物有好奇心&#xff0c;对所在领域有热情&a…

2025-03-03 学习记录--C/C++-PTA 7-38 数列求和-加强版

合抱之木&#xff0c;生于毫末&#xff1b;九层之台&#xff0c;起于累土&#xff1b;千里之行&#xff0c;始于足下。&#x1f4aa;&#x1f3fb; 一、题目描述 ⭐️ 二、解题思路 ⭐️ 主要利用进位加法器的思想&#xff08;将 小学时期就会的加法运算 转化成 计算机语言&…

Docker 常用指令手册(学习使用)

CentOS Docker 实用指令手册 1. 安装与配置 # CentOS 安装Docker sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install docker-ce docker-ce-cli containerd.io sudo systemctl st…

基于RK3588的重症监护信息系统应用解决方案

重症监护信息系统是医院临床信息系统的重要组成部分&#xff0c;也是医院信息化建设的重要组成部分。通过集成化的电子病历、实时监测、决策支持等功能&#xff0c;提高重症患者的诊疗效率和质量。 图片来源于网络 重症监护信息系统主要由数据信息采集单元、信息处理单元、通信…

C# 实现鼠标轨迹录制与回放自动化功能(附源码)

在软件自动化测试或者重复性办公任务中&#xff0c;鼠标操作的自动化可以大大减少人工干预&#xff0c;提高工作效率。这里将详细介绍如何使用 C# 实现鼠标轨迹的录制与回放功能&#xff0c;代码结构清晰&#xff0c;具有较强的扩展性。 引用 NuGet 包 在开发这个功能时&…

SpringMVC学习(入门案例思路及实现、Web容器初始化与SpringMVC配置类)(2)

目录 一、SpringMVC入门案例实现思路。 &#xff08;1&#xff09;核心依赖坐标分析。 &#xff08;2&#xff09;控制器类及其所使用注解分析。 &#xff08;3&#xff09;SpringMVC配置类及所使用注解分析。 &#xff08;4&#xff09;Tomcat启动时加载SpringMVC配置。(Web容…

ECS单机部署Hadoop

ECS单机部署Hadoop 系统准备 更新系统 sudo yum update -y sudo yum install -y wget vim net-tools openssh-server关闭防火墙 sudo systemctl stop firewalld -- 关闭防火墙 sudo systemctl disable firewalld -- 禁止自启动 sudo systemctl status firewalld -- 查看防…

(十 八)趣学设计模式 之 观察者模式!

目录 一、 啥是观察者模式&#xff1f;二、 为什么要用观察者模式&#xff1f;三、 观察者模式的实现方式四、 观察者模式的优缺点五、 观察者模式的应用场景六、 总结 &#x1f31f;我的其他文章也讲解的比较有趣&#x1f601;&#xff0c;如果喜欢博主的讲解方式&#xff0c;…