[python和CSP的姻缘]202109-2 非零段划分

news/2024/9/12 16:51:27/

思路

这个题看的时间超级长,主要是不太理解差分,也看不出来怎么联系到那里的
这个题解法很多,快考试了也就不研究那么多解法了,单研究个比较常考的差分法好啦

这里可以理解成找到一个水平线来上下分割
当p值足够大时,所有陆地都被海水淹没了,只有0个岛屿;p下降即海平面下降时,山峰逐渐凸显,每多一个岛屿露出水面,就多一个岛屿,没当一个凹谷出现,两边的岛屿相连就会少一个岛屿

  • 这就可以用两次遍历:
    首先需要设置一个差分数组,index是山的高度即数组A里的数值,对应的值是海平面到这里时岛屿变化的数量
    • 第一次遍历:
      遍历原来读入的数据A,看是山峰还是山谷,山峰的话则在差分数组对应的值里+1;山谷则-1
    • 第二次遍历:
      倒着遍历差分数组,即海平面从高到低下降,累加看后缀和的最大值

代码

n = int(input())
A = list(map(int,input().split()))+[0]
A = [0] + [A[i] for i in range(n) if A[i]!=A[i+1]]+[0]
max_line = max(A)
diff = [0] * ((max_line+1)*2)   # 差分数组for i in range(1,len(A)-1):if A[i-1]<A[i] and A[i+1]<A[i]:     # 山峰diff[A[i]] += 1     # 海平面到这个位置的山峰elif A[i-1]>A[i] and A[i+1]>A[i]:   # 山谷diff[A[i]] -= 1max_diff = 0
for i in range(max_line,-1,-1):diff[i] += diff[i+1]max_diff = max(max_diff,diff[i])
print(max_diff)

http://www.ppmy.cn/news/95852.html

相关文章

【Docker】docker安装nacos

下载镜像 docker pull nacos/nacos-server启动nacos docker run -p 8848:8848 --name nacos -d nacos/nacos-server镜像文件拷贝到本地目录(可以本地不用创建文件&#xff0c;否则挂载会重复生成重复logs和conf文件) docker cp nacos:/home/nacos/logs/ /data/nacos/logs/ d…

基于html+css的图展示95

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

springboot+ssm+java校园二手物品交易系统vxkyj

样需要经过市场调研&#xff0c;需求分析&#xff0c;概要设计&#xff0c;详细设计&#xff0c;编码&#xff0c;测试这些步骤&#xff0c;基于Java语言、Jsp技术设计并实现了校园二手物品交易系统。系统主要包括个人中心、商家管理、用户管理、商品分类管理、商品信息管理、商…

Linux|shell编程|拷贝大文件之显示进度条

前言&#xff1a; Linux由于自身并不是一个图形化的界面&#xff0c;因此&#xff0c;命令行是它的一个基础交互模式&#xff0c;而我们有的时候需要进度条来让程序运行的更加美观&#xff0c;更加直观&#xff0c;例如&#xff0c;一些比较消耗io的操作&#xff0c;文件拷贝&…

element-ui对话框dialog详解

效果展示 先给大家展示一下大致的样式 代码 <el-dialog draggable destroy-on-close v-model"dialogAddVisible" title"添加用户" width"35%" center><el-form :inline"true" :model"addFormInfo" status-icon …

SpringBoot 启动流程

概述 SpringBoot 是一个基于 Spring 的框架&#xff0c;它通过自动配置和约定大于配置的方式&#xff0c;简化了 Spring 应用程序的开发和部署。在本文中&#xff0c;我们将会深入了解 Spring Boot 的启动流程&#xff0c;掌握 Spring Boot 应用程序是如何启动并初始化的。 构…

JVM Sandbox入门详解

一. 概述 在日常开发中&#xff0c;经常会接触到面向AOP编程的思想&#xff0c;我们通常会使用Spring AOP来做统一的权限认证、异常捕获返回、日志记录等工作。之所以使用Spring AOP来实现上述功能&#xff0c;是因为这些场景本质上来说都是与业务场景挂钩的&#xff0c;但是具…

【linux系统操作】 - 技术一览

文章目录 1. 用户管理2. 文件管理3. 文件系统4. 字符处理5. 网络管理6. 进程管理7. 软件安装8. vi和vim编辑器9. 正则表达式 1. 用户管理 1.用户和用户组 2.账号管理 新增和删除用户、组&#xff1b;检查用户信息切换用户信息、用其他用户身份执行例行任务管理 : 周期性执行任…

Qt自定义的ColorDialog--仿QColorDialog

Qt已经有了色板选择&#xff0c;但是它使用QDialog形成的&#xff0c;每次调用基本上都成了点一个按钮&#xff0c;谈一个模态框&#xff0c;选择好颜色之后再关掉模态框。 但是&#xff0c;如果想将颜色选择板放在窗口上&#xff0c;并不会有模态的功能就会比较麻烦&#xff…

pta(浙大第四版)五道经典练习题③

目录 ①7-4 IP地址转换 ②、查找日期 ③藏头词 四、IP地址转换 五、删除链表值为偶数的节点 ①7-4 IP地址转换 题述&#xff1a;IP地址转换&#xff1a;一个IP地址是用四个字节&#xff08;每个字节8个位&#xff09;的二进制码组成。输入32位二进制字符串&#xff0c;输…

Apache Kafka - 高性能原因探究

文章目录 概述图解 概述 Kafka 的高性能主要依赖于以下几个关键因素: 分布式架构:Kafka 采用分布式集群架构,可以水平扩展到上万个节点,支持每秒处理百万级消息。持久化存储:Kafka 使用文件系统持久化存储消息,避免了数据库成为性能瓶颈,大大提高了吞吐量。顺序读写:Kafka 的…

基于STM32的DHT11温湿度测量

目录 1.简介 2.主要参数 3.引脚说明 4.注意事项 5.单总线协议 6.数据格式 7.工作时序 8.分模块编写程序 1.简介 DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术&#xff0c;确保产品具有极高的可靠…

Unity包围盒

序 比如&#xff0c;目前导入了一个obj文件&#xff0c;想知道它的AABB包围盒是什么。 官方文档 Unity - Scripting API: Bounds (unity3d.com) 可以看到&#xff0c;包围盒有三个类别的&#xff1a; Mesh.bounds Unity - Scripting API: Mesh.bounds (unity3d.com) 不随…

Mysql中的not in和null

MySQL中的not in和null 当我们在MySQL中使用not in时&#xff0c;例如 select id from user when id not in(...)如果not in(…)数据中有null时&#xff0c;返回的结果是空表。 错误在于判断 a not in B的方法的本质是a 使用 ! 与B中的每一条进行判断 比如 3 not in (null…

catia距离测量

选无限 如果有限几何&#xff0c;即默认的情况的话 这距离很多时候可不是我们想要的。

SpringCloudAlibaba中篇(Sentinel,Seata)(超级无敌认真好用,万字收藏篇!!!!)

文章目录 SpringCloudAlibaba中篇(Sentinel,Seata)1 Sentinel&#xff08;流量处理&#xff09;1.1 分布式系统遇到的问题1.2 服务雪崩1.3 容错机制1.4 什么是Sentinel1.5 初步使用Sentinel-流控规则1.6 Sentinel- SentinelResource1.7 初步使用Sentinel-降级规则1.8 控制台部署…

6.2:荷兰国旗问题

文章目录 实现key前面的数都小于等key&#xff0c;key后面的数都大于等于key1&#xff1a;前后指针法&#xff1a;2&#xff1a;挖坑法3&#xff1a;单指针法&#xff08;左神&#xff09; 辗转相除法求最大公约数 实现key前面的数都小于等key&#xff0c;key后面的数都大于等于…

99年表示真干不过,部门新来的00后测试员已把我卷崩溃,想离职了...

在程序员职场上&#xff0c;什么样的人最让人反感呢? 是技术不好的人吗?并不是。技术不好的同事&#xff0c;我们可以帮他。 是技术太强的人吗?也不是。技术很强的同事&#xff0c;可遇不可求&#xff0c;向他学习还来不及呢。 真正让人反感的&#xff0c;是技术平平&#x…

C++ 学习 ::【基础篇:05】:C++ 函数重载认识及使用、简单介绍:C++ 支持函数重载的原因

本系列 C 相关文章 仅为笔者学习笔记记录&#xff0c;用自己的理解记录学习&#xff01;C 学习系列将分为三个阶段&#xff1a;基础篇、STL 篇、高阶数据结构与算法篇&#xff0c;相关重点内容如下&#xff1a; 基础篇&#xff1a;类与对象&#xff08;涉及C的三大特性等&#…

第十四届全国大学生数学竞赛决赛(非数类)游记+答案解析

2023/5/27 20:08&#xff1a;今天早上9:00~12:00考了数学竞赛国赛。广州是真的热啊&#xff01;西安才17度&#xff0c;还下着小雨&#xff0c;到广州之后那个艳阳直接给我人干废了&#xff0c;去酒店的路上步行了20分钟真的要死了已经。 拿到卷子的我是崩溃的&#xff0c;用正…