当前位置: 首页 > news >正文

洛谷 P4552 [Poetize6] IncDec Sequence C语言

P4552 [Poetize6] IncDec Sequence - 洛谷 | 计算机科学教育新生态

题目描述

给定一个长度为 n 的数列 a1​,a2​,…,an​,每次可以选择一个区间 [l,r],使这个区间内的数都加 1 或者都减 1。

请问至少需要多少次操作才能使数列中的所有数都一样,并求出在保证最少次数的前提下,最终得到的数列有多少种。

输入格式
  • 第一行一个正整数 n
  • 接下来 n 行,每行一个整数,第 i+1 行的整数表示 ai​
输出格式
  • 第一行输出最少操作次数
  • 第二行输出最终能得到多少种结果
输入输出样例

输入 #1

4
1
1
2
2

输出 #1

1
2
说明/提示

对于 100% 的数据,n≤100000,0≤ai​≤2的31次方。

思路:


代码如下:

#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
typedef long long ll;
const ll N = 1e5+10;
ll arr[N];
ll pre[N];
ll n;
ll p,ne;
int main()
{cin >> n;for(ll i = 1 ; i <= n ; i++){cin >> arr[i];pre[i] = arr[i] - arr[i-1];}for(ll i = 2 ; i <= n ; i++){if(pre[i] > 0)p += pre[i];else if(pre[i] < 0)ne -= pre[i];}cout << max(p,ne) << endl;cout << max(p,ne) - min(p,ne) + 1;return 0;
}

http://www.lryc.cn/news/532168.html

相关文章:

  • 保姆级教程Docker部署Zookeeper官方镜像
  • javaEE-6.网络原理-http
  • 【戒抖音系列】短视频戒除-1-对推荐算法进行干扰
  • 9.建造者模式 (Builder Pattern)
  • OpenCV:特征检测总结
  • Clion开发STM32时使用stlink下载程序与Debug调试
  • 电脑开机键一闪一闪打不开
  • 深度学习 Pytorch 基础网络手动搭建与快速实现
  • Sqli-labs靶场实录(一):Basic Challenges
  • 2024最新版Node.js详细安装教程(含npm配置淘宝最新镜像地址)
  • RK3568使用QT搭建TCP服务器和客户端
  • Android学习20 -- 手搓App2(Gradle)
  • LeetCode - Google 大模型10题 第2天 Position Embedding(位置编码) 3题
  • PostgreSQL 数据库备份与还原
  • proxmox通过更多的方式创建虚拟机
  • WordPress使用(2)
  • git中文件的状态状态切换
  • 解决php8.3无法加载curl扩展
  • 三路排序算法
  • 入行FPGA设计工程师需要提前学习哪些内容?
  • DBASE DBF数据库文件解析
  • html基本结构和常见元素
  • JAVAweb学习日记(十) Mybatis入门操作
  • 从Transformer到世界模型:AGI核心架构演进
  • Rk3588芯片介绍(含数据手册)
  • java开发面试自我介绍模板_java面试自我介绍3篇
  • w193基于Spring Boot的秒杀系统设计与实现
  • chrome浏览器chromedriver下载
  • 【HTML入门】Sublime Text 4与 Phpstorm
  • Python----Python高级(并发编程:进程Process,多进程,进程间通信,进程同步,进程池)