小G的日常之烦心事 ZZULIOJ - 2398 公式

本文详细解析了一道算法题目,目标是找出数组中两个元素的组合,使得它们之间的绝对差加上它们下标的差值达到最大。通过转换问题形式,将其分解为两个独立的子问题进行求解,并提供了C++实现的AC代码。

题解

题目链接
将abs(a[j]-a[i])+j-i的最大值转换为两个式子
-(a[i] + i) + (a[j] + j)和(a[i] - i) + (j - a[j])取最大值 将(a[i] + i)和(a[i] - i)分别看作一个整体 想要结果最大前者尽量小后者尽量大 所以在计算过程中取min和max分别存在x和y中

AC代码

#include <stdio.h>
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;

const int INF = 0x3f3f3f3f;
const int MAXN = 1e6 + 10;
int a[MAXN];

int main()
{
#ifdef LOCAL
	freopen("C:/input.txt", "r", stdin);
#endif
	int N;
	cin >> N;
	for (int i = 0; i < N; i++)
		scanf("%d", &a[i]);
	int x = a[0], y = a[0], ans = 0; //第一位不用计算 x和y初始化为第一位
	for (int i = 1; i < N; i++)
	{
		ans = max({ ans, x + i - a[i], -y + a[i] + i }); //C++11
		x = max(x, a[i] - i);
		y = min(y, a[i] + i);
	}
	cout << ans << endl;

	return 0;
}
【顶级EI完美复现】电力系统碳排放流的计算方法【IEEE 14节点】(Matlab代码实现)内容概要:本文介绍了名为《【顶级EI完美复现】电力系统碳排放流的计算方法【IEEE 14节点】(Matlab代码实现)》的技术文档,核心内容是基于IEEE 14节点电力系统模型,利用Matlab实现碳排放流的精确计算方法。该方法通过建立电力系统中各节点的功率流动与碳排放之间的映射关系,实现对电能传输过程中碳足迹的追踪与量化分析,属于电力系统低碳调度与碳流管理领域的关键技术。文中强调“顶级EI完美复现”,表明其算法和仿真结果具有较高的学术严谨性和可重复性,适用于科研验证与教学演示。; 适合人群:电力系统、能源与动力工程、电气工程及其自动化等相关专业的研究生、科研人员以及从事电力系统低碳化、碳排放核算工作的技术人员。; 使用场景及目标:①用于电力系统碳排放流理论的学习与仿真验证;②支撑含新能源接入的电力系统低碳调度、碳交易、绿色电力溯源等课题的研究;③为撰写高水平学术论文(如EI/SCI期刊)提供可靠的代码基础和技术参考。; 阅读建议:读者应具备电力系统分析、Matlab编程的基础知识,建议结合电力系统潮流计算、节点导纳矩阵等前置知识进行学习,并通过调整系统参数和运行方式,深入理解碳排放流的分布规律与影响因素。
好的,关于类的继承,它是面向对象编程中的重要概念之一,它允许我们创建一个新类,该类继承了另一个已有类的属性和方法。 在Python中,我们使用关键字`class`来定义一个类,然后使用`()`来指定要继承的类名。例如,如果我们想要创建一个新类`Rectangle`,我们可以这样写: ``` class Rectangle(Shape): # 类定义 ``` 这里,我们使用`()`指定要继承的类名为`Shape`,这样`Rectangle`就会继承`Shape`类的所有属性和方法。 关于抽象类,它是一种特殊的类,它不能被直接实例化,而只能被用作其他类的基类。抽象类通常包含一些抽象方法,这些方法必须在子类中实现。 在Python中,我们可以使用`abc`模块来定义抽象类和抽象方法。例如,如果我们想要创建一个抽象类`Shape`,我们可以这样写: ``` import abc class Shape(metaclass=abc.ABCMeta): @abc.abstractmethod def area(self): pass @abc.abstractmethod def perimeter(self): pass ``` 这里,我们使用`abc.ABCMeta`元类来指定这是一个抽象类。然后,我们定义了两个抽象方法`area()`和`perimeter()`,这些方法必须在子类中实现,否则会抛出`TypeError`异常。 在子类中,我们可以通过继承`Shape`类并实现其抽象方法来创建具体的图形类。例如: ``` class Rectangle(Shape): def __init__(self, width, height): self.width = width self.height = height def area(self): return self.width * self.height def perimeter(self): return 2 * (self.width + self.height) ``` 这里,我们创建了一个`Rectangle`类,它继承了`Shape`类,并实现了`area()`和`perimeter()`方法,以计算矩形的面积和周长。由于`Shape`类是一个抽象类,我们必须实现其所有抽象方法,否则会抛出异常。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值