【枚举】CF1706 C
有人一道1400写了一个小时
Problem - C - Codeforces
题意:
思路:
首先先去观察样例:
很显然,对于n是奇数的情况,只有一种情况,直接操作偶数位就好了
主要是没搞清楚n是偶数的情况

其实有个小技巧,在模拟样例的时候特殊化成0和1会比较好看一点
Code:
#include <bits/stdc++.h>#define int long longusing i64 = long long;using namespace std;const int N = 1e5 + 10;int h[N];int calc(int p) {if (h[p] > h[p - 1] && h[p] > h[p + 1]) return 0;else {return max({h[p - 1], h[p + 1]}) - h[p] + 1;}
}
void solve() {int n;cin >> n;for (int i = 1; i <= n; i ++) {cin >> h[i];}int ans = 0;for (int i = 2; i < n; i += 2) {ans += calc(i);}int res = ans;if (n % 2 == 0) {for (int i = n - 2; i >= 2; i -= 2) {res -= calc(i);res += calc(i + 1);ans = min(ans, res);}}cout << ans << "\n";
}
signed main() {ios::sync_with_stdio(false);cin.tie(nullptr);int t = 1;cin >> t;while(t --) {solve();}return 0;
}
相关文章:
【枚举】CF1706 C
有人一道1400写了一个小时 Problem - C - Codeforces 题意: 思路: 首先先去观察样例: 很显然,对于n是奇数的情况,只有一种情况,直接操作偶数位就好了 主要是没搞清楚n是偶数的情况 其实有个小技巧&…...
uniapp-疫情应急管理系统学生端
1 疫情资讯展示 <template><view class"container"><uni-section title"自定义卡片内容" type"line"><uni-card title"基础卡片" class"card-box" v-for"(item,index) in epidemicNewsList"…...
FreeRTOS的线程间通信
一、分类 FreeRTOS的线程间通信分为这几大类 由于我还在学习中,目前显从信号开始记录学习 二、逐块讲解 1、信号(osSignalWait osSignalSet) FreeRTOS从V8.2.0版本开始提供任务通知这个功能,每个任务多有一个32位的通知值&am…...
Linux内存管理工作原理:
Linux使用虚拟内存和内存映射来管理内存。每个进程都有独立的虚拟地址空间,通过将虚拟地址映射到物理内存,实现对内存的管理和访问。 虚拟地址空间划分:32位系统中,内核空间占1GB,用户空间占3GB;64位系统中…...
【并发编程】ShenyuAdmin里面数据同步用到的无锁环形队列LMAX Disruptor并发框架
并发,数据同步往往是业务开发中比较重要的部分。 shenyu网关数据同步设计方案图 shenyu官网给出的同步设计方案图如下: 基于事件异步并发框架com.lmax.disruptor 下载下示例代码,跑起来发现,在shenyuAdmin模块里面用到了com.lma…...
Nginx(2)
目录 1.安装Nginx1.yum安装2.编译安装3.Nginx命令 2.配置文件详解 1.安装Nginx 1.yum安装 [rootdocker ~]# yum -y install nginx通过 rpm -ql nginx 查看安装信息 2.编译安装 2.1安装所需要的依赖 yum install -y gcc gcc-c make libtool wget pcre pcre-devel zlib zlib-…...
二维数组的鞍点
描述 给定一个二维数组,找出其中的鞍点。若存在鞍点,则输出其位置;否则输出“NO”。 鞍点的定义:在一个矩阵的行和列中,某个元素是所在行的最大值,而同列中又是最小值。 输入 输入包含多行,…...
go 内置函数copy()
go内置函数copy go 内置函数copy()函数说明:代码例子1:代码例子2:代码例子3: go 内置函数copy() 函数说明: 当我们在Go语言中需要将一个切片的内容复制到另一个切片时,可以使用内置的copy()函数。copy()函…...
Spring简述
Sping是什么Spring主要模块IOCDI依赖注入的三种方式 AOP术语 Sping是什么 Spring是一个轻量级的开源框架,主要作用是为了简化开发,它以IOC(控制反转)和AOP(面向切面编程)为内核 Spring主要模块 我们一般…...
框框大学之——教育技术学
清一色劝退的教育技术学。。。。。。 https://www.kkdaxue.com/?current1&major%E6%95%99%E8%82%B2%E6%8A%80%E6%9C%AF%E5%AD%A6&pageSize10&sortFieldcreateTime&sortOrderdescend 总结: 1 杂而不经 2 摆烂劝退居多 3 适合躺平 4 考公不行 5 要多…...
Android中的Apk 包体优化
Android中的Apk 包体优化 在Android中,APK包体优化指的是减小应用程序的安装包大小,以降低用户下载和安装应用的成本,提高用户体验。APK包体优化对于应用的性能、启动速度和用户留存率都有着重要的影响。下面展开说说一些常见的APK包体优化策…...
Java基础接口详解
Java基础接口详解 文末附上下载详解pdf链接 实现java代码中接口详细分析 Java基础接口是一种定义了一组方法签名但没有提供实际实现的抽象类似的结构。它们允许类通过实现接口来声明自己拥有某些特定的行为。接口在Java中扮演了重要的角色,以下是一些关键点…...
CCL 2023 电信网络诈骗案件分类评测-第一名方案
1 任务内容 1.1 任务背景 2022年12月1日起,新出台的《反电信网络诈骗犯罪法》正式施行,表明了我国治理当前电信网络诈骗乱象的决心。诈骗案件分类问题是打击电信网路诈骗犯罪过程中的关键一环,根据不同的诈骗方式、手法等将其分类ÿ…...
go test
关于go test 报错 command-line-arguments go test 直接调用被测试go文件方法时候报错 command-line-arguments [command-line-arguments.test],这里已经明确指出了命令参数问题 PS E:\code\mqtt> go test .\client_test.go # command-line-arguments [comma…...
401 · 排序矩阵中的从小到大第k个数
链接:LintCode 炼码 - ChatGPT!更高效的学习体验! 题解: 九章算法 - 帮助更多程序员找到好工作,硅谷顶尖IT企业工程师实时在线授课为你传授面试技巧 class Solution { public:/*** param matrix: a matrix of intege…...
进程什么时候会进入阻塞状态
等待I/O操作:当进程需要进行输入/输出操作,但是所需的数据还没有准备好或者输出设备还没有空闲时,进程会进入阻塞状态,等待I/O操作完成。 等待资源:当进程需要访问共享资源,但是该资源已经被其他进程占用时…...
炸裂,靠“吹牛”过京东一面,月薪40K
说在前面 在40岁老架构师尼恩的(50)读者社区中,经常有小伙伴,需要面试美团、京东、阿里、 百度、头条等大厂。 下面是一个5年小伙伴成功拿到通过了京东一面面试,并且最终拿到offer,月薪40K。 现在把面试…...
awk基础知识和案例
文章目录 awk1 awk用法入门1.1 BEGIN和END语句块1.2 awk语法1.2.1 常用命令选项1.2.2 awk变量内置变量自定义变量 1.3 printf命令1.3.1 格式1.3.2 演示 1.4 操作符 2 awk高阶用法2.1 awk控制语句(if-else判断)2.2 awk控制语句(while循环)2.3 awk控制语句(do-while循环)2.4 awk控…...
重型并串式液压机械臂建模与simscape仿真
一、建模 Hydraulic manipulator Figure 1 shows different constituting parts of the manipulator considered, with every part labeled using numbers from 1 to 10. For each part, a CAD model is provided. Each file is named in accordance with the corresponding la…...
zookeeper的部署
一 先下载zookeeper 二 解压包 三 修改配置文件 四 把配好文件传到其他的节点上面 五 在每个节点的dataDir指定的目录下创建一个 myid 的文件 六 配置zook的启动脚本 七 设置开机自启 八 分别启动 九查看当前状态service zookeeper status 十 总结 一 先下载zookeeper …...
C++ STL 内存管理策略
C STL内存管理策略解析 C标准模板库(STL)以其高效性和灵活性成为开发者不可或缺的工具,而内存管理策略是其核心优势之一。STL通过智能分配器、容器内部机制及算法优化,实现了内存的高效利用与动态扩展。本文将深入探讨STL的内存管…...
PinButtonEvents:嵌入式按钮事件处理框架深度解析
1. PinButtonEvents 库深度解析:面向嵌入式系统的高可靠性按钮事件处理框架在嵌入式系统开发中,按钮输入看似简单,实则暗藏诸多工程陷阱:机械触点抖动导致的误触发、长按与短按的语义混淆、双击/多击行为的时序判定、低功耗场景下…...
现代化前端架构设计的10个黄金原则:从Este项目学习最佳实践
现代化前端架构设计的10个黄金原则:从Este项目学习最佳实践 【免费下载链接】este This repo is suspended. 项目地址: https://gitcode.com/gh_mirrors/es/este 在当今快速发展的前端开发领域,构建可维护、可扩展且高效的应用程序架构至关重要。…...
数值进制及其转换
欢迎来到我的软考中级——软件设计师备考合集。这里不只是一份简单的知识点堆砌,而是我在备考征途中,对庞杂知识体系进行深度梳理与内化的结晶。 面对浩瀚的考纲,从计算机组成原理的底层逻辑,到操作系统的进程调度;从数…...
【数据结构】顺序表的应用->通讯录(详细代码及配图)
小编主页详情<-请点击 小编gitee代码仓库<-请点击 本文主要介绍了数据结构的顺序表的应用->通讯录,内容全由作者原创(无AI),同时深度解析了通讯录顺序表增删查改等功能,并带有配图帮助博友们更好的理解&#…...
4 大类别 22 个高效的 Agentic Skills | 适用于 Claude、GPT
增强各类 AI 模型的能力,帮助你在写作、内容生产、研究分析、视觉表达、自动化执行等方面提升效率。 这些技能以 .md 格式编写,虽然这是 Claude 常用的技能格式,但你同样可以将内容复制到 ChatGPT 中使用。 Claude 如何创建 skill 国内用户…...
imx6ull静态IP配置与MobaXterm远程登录实战指南
1. imx6ull开发板静态IP配置全流程 第一次接触imx6ull开发板时,最让人头疼的就是每次重启后IP地址都会变化。想象一下,你刚调试好的远程连接,重启设备后就找不到了,这种体验实在太糟糕了。今天我就来分享一个彻底解决这个问题的方…...
Vibe Coding 有哪些实用技巧?这篇文章讲透工作流、提示词和避坑方法
Vibe Coding 是什么?一篇讲清它的技巧、工作流与避坑方法 这两年,AI 编程工具越来越强,很多开发者开始用自然语言驱动代码生成。围绕这种开发方式,一个很火的词出现了:Vibe Coding。 简单说,Vibe Coding 就…...
layout中节点不显示,也没解决,就是记录一下。
现象是:并没有继承过来。排查步骤:1. 先看是否是 layout XL 打开的2.其次点击笑火花 重新抽取下connectivity3.Q 一下 M2 看属性 链接性没吃到4.再次画一下M2 打孔不要用 自动打孔 手动画一下。无变化。5.再次点击小火花,点击Options 将Extra…...
高并发场景下的订单和库存处理方案
前言之前一直有小伙伴私信我问我高并发场景下的订单和库存处理方案,我最近也是因为加班的原因比较忙,就一直没来得及回复。今天好不容易闲了下来想了想不如写篇文章把这些都列出来的,让大家都能学习到,说一千道一万都不如满满的干…...
