104. 货仓选址

在一条数轴上有 N 家商店,它们的坐标分别为 A1∼AN。

现在需要在数轴上建立一家货仓,每天清晨,从货仓到每家商店都要运送一车商品。

为了提高效率,求把货仓建在何处,可以使得货仓到每家商店的距离之和最小。

输入格式
第一行输入整数 N。

第二行 N 个整数 A1∼AN。

输出格式
输出一个整数,表示距离之和的最小值。

数据范围
1≤N≤100000,
0≤Ai≤40000
输入样例:
4
6 2 9 1
输出样例:
12

#include <bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int a[N];
int n;
int res;
int main()
{cin>>n;for(int i=0;i<n;i++)cin>>a[i];sort(a,a+n);for(int i=0;i<n;i++)res+=abs(a[i]-a[n/2]);cout<<res<<endl;return 0;
}

320. 能量项链

在 Mars 星球上,每个 Mars 人都随身佩带着一串能量项链,在项链上有 N 颗能量珠。

能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数。

并且,对于相邻的两颗珠子,前一颗珠子的尾标记一定等于后一颗珠子的头标记。

因为只有这样,通过吸盘(吸盘是 Mars 人吸收能量的一种器官)的作用,这两颗珠子才能聚合成一颗珠子,同时释放出可以被吸盘吸收的能量。

如果前一颗能量珠的头标记为 m,尾标记为 r,后一颗能量珠的头标记为 r,尾标记为 n,则聚合后释放的能量为 m×r×n(Mars 单位),新产生的珠子的头标记为 m,尾标记为 n。

需要时,Mars 人就用吸盘夹住相邻的两颗珠子,通过聚合得到能量,直到项链上只剩下一颗珠子为止。

显然,不同的聚合顺序得到的总能量是不同的,请你设计一个聚合顺序,使一串项链释放出的总能量最大。

例如:设 N=4,4 颗珠子的头标记与尾标记依次为 (2,3)(3,5)(5,10)(10,2)。

我们用记号 ⊕ 表示两颗珠子的聚合操作,(j⊕k) 表示第 j,k 两颗珠子聚合后所释放的能量。则

第 4、1 两颗珠子聚合后释放的能量为:(4⊕1)=10×2×3=60。

这一串项链可以得到最优值的一个聚合顺序所释放的总能量为 ((4⊕1)⊕2)⊕3)=10×2×3+10×3×5+10×5×10=710。

输入格式
输入的第一行是一个正整数 N,表示项链上珠子的个数。

第二行是 N 个用空格隔开的正整数,所有的数均不超过 1000,第 i 个数为第 i 颗珠子的头标记,当 i<N 时,第 i 颗珠子的尾标记应该等于第 i+1 颗珠子的头标记,第 N 颗珠子的尾标记应该等于第 1 颗珠子的头标记。

至于珠子的顺序,你可以这样确定:将项链放到桌面上,不要出现交叉,随意指定第一颗珠子,然后按顺时针方向确定其他珠子的顺序。

输出格式
输出只有一行,是一个正整数 E,为一个最优聚合顺序所释放的总能量。

数据范围
4≤N≤100,
1≤E≤2.1×109
输入样例:
4
2 3 5 10
输出样例:
710

#include <bits/stdc++.h>
using namespace std;
const int N = 210, INF = 0x3f3f3f3f;
int n;
int w[N];
int f[N][N];
int main()
{cin >> n;for (int i = 1; i <= n; i++){cin >> w[i];w[i + n] = w[i];}for (int len = 3; len <= n + 1; len++){for (int l = 1; l + len - 1 <= n * 2; l++){int r = l + len - 1;for (int k = l + 1; k < r; k++)f[l][r] = max(f[l][r], f[l][k] + f[k][r] + w[l] * w[k] * w[r]);}}int res = 0;for (int l = 1; l <= n; l++)res = max(res, f[l][l + n]);cout << res << endl;return 0;
}

区间dp,绝对值不等式相关推荐

  1. ACM - 贪心 - 基础(区间问题 + Huffman树 + 排序不等式 + 绝对值不等式 + 推公式)

    贪心 经典母题 1.区间问题 AcWing 905. 区间选点 AcWing 908. 最大不相交区间数量 AcWing 906. 区间分组 AcWing 907. 区间覆盖 2.Huffman树 A ...

  2. UVA10003 切木棍 Cutting Sticks(区间DP、细节)

    整理的算法模板合集: ACM模板 本题其实就是一个区间DP 的模板题,总长度为len,有n个切割点,也就是说能被切割成n+1段,所以左边界是0,有边界是n + 1,所以答案就是f[0][n + 1]. ...

  3. Codevs 3002 石子归并 3(DP四边形不等式优化)

    3002 石子归并 3 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond 题目描述 Description 有n堆石子排成一列,每堆石子有一个重量w[i], 每次 ...

  4. (详解)区间DP —— 平行四边形优化

    本文从普通区间dp.平行四边形优化区间dp.例题三个步骤,详细分析了区间动态规划!!! 编写不宜,希望各位兄台耐心阅读完整!!! 1.区间dp 区间dp其实就是一种建立在线性结构上的整体上对区间的动态 ...

  5. 绝对值不等式的常见形式及解法

    绝对值不等式解法的基本思路是:去掉绝对值符号,把它转化为一般的不等式求解,转化的方法一般有:(1)绝对值定义法:(2)平方法:(3)零点区域法.常见的形式有以下几种. 1. 形如不等式: 利用绝对值的 ...

  6. 绝对值不等式(贪心)

    文章目录 前言 一.贪心 二.AcWing 104. 货仓选址 本题解析 AC代码 三.时间复杂度 前言 复习acwing算法基础课的内容,本篇为讲解基础算法:贪心--绝对值不等式,关于时间复杂度:目 ...

  7. 贪心算法_排队不等式_绝对值不等式_推公式

    文章目录 排队不等式 原题链接 题目大意: 思路: 证明: 代码: 绝对值不等式 原题链接 题目大意: 思路: 证明: 代码: 推公式 原题链接 题目大意 思路: 证明: 代码: 排队不等式 原题链接 ...

  8. Day-1 货仓选址(绝对值不等式)

    主要考点:绝对值不等式 结论:在一个长度为n的区间,中间值x到区间各点的距离之和最短.若n为奇数,则x为中位数,若n为偶数,则x为中间两个中的任意一个. 证明: 渐进式取中. 题目描述 在一条数轴上有 ...

  9. 【acwing】104. 货仓选址*(贪心|绝对值不等式)

    穿越隧道 绝对值不等式 如果x在a~b区间外,∣a−x∣+∣b−x∣>=∣a−b∣|a - x| + |b - x| >= |a-b|∣a−x∣+∣b−x∣>=∣a−b∣(当x在a, ...

  10. 104 货仓选址(绝对值不等式)

    1. 问题描述: 在一条数轴上有 N 家商店,它们的坐标分别为 A1∼AN.现在需要在数轴上建立一家货仓,每天清晨,从货仓到每家商店都要运送一车商品.为了提高效率,求把货仓建在何处,可以使得货仓到每家 ...

最新文章

  1. 运行cmd直接进入指定目录下的命令
  2. LIBSVM的使用方法以及参数注释总结
  3. 使用delphi 开发多层应用(十三)使用Basic4android 直接访问kbmMW server
  4. 使用C#操作Oracle Spatial的SDO_GEOMETRY对像(读取和写入)
  5. 调整自己,必须调整自己了
  6. oracle xp安装详细步骤
  7. 学习完windows网络编程第一章后做的UDPTest程序
  8. qt 的进程间共享内存 QSharedMemory
  9. 一个例子“入坑“布谷鸟算法(附完整py代码)
  10. 数据包络分析DEA有哪些指标?
  11. Java常量池详解:字符串常量池、Class常量池、运行时常量池 三者关系
  12. 对强化学习理解及其与有监督学习和无监督学习的比较
  13. 叉乘点乘混合运算公式_【“数”你好看】对数运算(Logarithm)
  14. 火狐浏览器代理设置:
  15. Vs2008调试慢的问题
  16. 数据中心白皮书 2022东数西算下数据中心高性能计算的六大趋势八大技术
  17. delaunay三角剖分与delaunay四面体
  18. 推荐几个练习键盘打字的工具【自己用过的】
  19. 【转载】spring-batch入门实践
  20. 【腾讯开发者大会】天刀手游开发历程(笔记)

热门文章

  1. MySQL 8.0.20 Window10免安装版配置及Navicat管理
  2. Java实现蓝桥杯模拟约数的个数
  3. CSP-J2019第二轮 解题分析
  4. Leetcode学习之贪心算法
  5. 开篇词:为什什么要学习 Spring Boot
  6. python 工资管理软件_使用Python计算公司所有员工的薪资报表,核算
  7. 上海市行政管理学校96计算机,有编制!上海市行政管理学校招聘8人公告
  8. python eel vue_VU - OSCHINA
  9. uniapp微信客服
  10. 基因对疾病的影响规律--读论文