转化问题 根据目标条件,存在一个非负整数 c,使得对于所有 i∈[1,n],都满足 ∣ai′−i∣=c,其中 a′ 是我们期望得到的数组。这个等式可以拆解为两种情况:ai′−i=c 或 ai′−i=−c。
引入辅助数组 为了简化问题,我们定义一个辅助数组 b,令 bi=ai−i。那么,我们的目标就是将数组 a 转换成 a′,等价于将数组 b 转换成数组 b′(其中 bi′=ai′−i),并且数组 b′ 中的每个元素要么是 c,要么是 −c。
计算代价
实验室里有一排 n 个传感器,按顺序编号为 1 到 n。第 i 个传感器的当前读数为 ai。为了保证所有传感器的一致性,需要使调整后存在一个非负整数 d,满足对每一个 i 都有 ∣ai−i∣=d。每次操作可以选择任意一个传感器,将其读数加 1 或减 1。求最少需要多少次操作。
序列长度 n 满足 1≤n≤1000,序列中每个整数 ai 满足 1≤ai≤n。
第一行包含一个整数 n,表示传感器的数量。 第二行包含 n 个整数 a1,a2,…,an,表示各传感器的初始读数。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册