【JZOJ 3432】【OnlineJudge 1061】小M的服务器(含斜率优化解释)

基于小波变换的信号降噪处理及仿真研究_信号处理方法推荐--1(转载自用,侵删)... 综述作者:aresmiki链接:https://www.zhihu.com/question/23701194/answer/167005497来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。非平稳信号处理应该是现在信号处理技术最新的也是最热的研究方向了,信号处理方法从最早的时域统计到傅里叶变换的频域分析,是人们认识信号本质的一次巨大飞跃,给了分析人员换个角度看世界的... 阅读详情

Description

我们需要将一个文件复制到n个服务器上,这些服务器的编号为S1, S2, …, Sn。

首先,我们可以选择一些服务器,直接把文件复制到它们中;将文件复制到服务器Si上,需要花费ci > 0的置放费用。对于没有直接被复制文件的服务器Si来说,它依次向后检查Si+1, Si+2, …直到找到一台服务器Sj:Sj中的文件是通过直接复制得到的,于是Si从Sj处间接复制得到该文件,这种复制方式的读取费用是j – i(注意j>i)。另外,Sn中的文件必须是通过直接复制得到的,因为它不可能间接的通过别的服务器进行复制。我们设计一种复制方案,即对每一台服务器确定它是通过直接还是间接的方式进行复制(Sn只能通过直接方式),最终使每一台服务器都得到文件,且总花费最小。

Solution

首先这题的60分方法很简单,只用fi表示第i个必选的最小代价;
我们来考虑考虑用斜率优化,
设当前到i,状态j比k要优(j在前),则有:

fj+(j−i)∗(j−i−1)2<fk+(k−i)∗(k−i−1)2

移项:
fj−fk+j2−k2−j+k2j−k<i

用g(j,k)来表示这个东西,搞一波斜率优化DP即可,
复杂度:O(2n);

这里顺便讲一下斜率优化:

斜率优化

斜率优化的g函数是一定满足一个单调性的,前面的一定优于后面的,以本题为例:
设队列中的元素依次为j1,j2,,j3,...,
有:(这个显然)

i>g(j1,j2),i>g(j2,j3),i>g(j3,j4)...

也有:
i>g(j1,j2)>g(j2,j3)>g(j3,j4)>...

解释如下:假设相邻的3个元素:j1,j2,j3,
要想保证以上的式子,就必须当g(j1,j2)<g(j2,j3)时,删除j2,
因为:假设j2最优,则:
g(j1,j2)>i

g(j2,j3)<i

g(j2,j3)<i<g(j1,j2)

与上面的假设冲突,所以假设不成立,
所以当g(j1,j2)<g(j2,j3)时,删除j2,
所以整个式子满足:i>g(j1,j2)>g(j2,j3)>g(j3,j4)>...

Code

#include<cstdio>
#include<cstdlib>
#define fo(i,a,b) for(int i=a;i<=b;i++)
#define fod(i,a,b) for(LL i=a;i>=b;i--)
using namespace std;
typedef long long LL;
const int N=1000500;
int read(int &n)
{
    char ch=' ';int q=0,w=1;
    for(;(ch!='-')&&((ch<'0')||(ch>'9'));ch=getchar());
    if(ch=='-')w=-1,ch=getchar();
    for(;ch>='0' && ch<='9';ch=getchar())q=q*10+ch-48;n=q*w;return n;
}
int n;
int a[N],S,T;
LL f[N],d[N];
double G(LL i,LL j){return(1.0*(f[i]-f[j]+(i*i-j*j-i+j)/2)/(i-j));} 
int main()
{
    read(n);
    fo(i,1,n) read(a[i]);
    f[n]=a[n];d[S=T=1]=n;
    fod(i,n-1,0)
    {
        while(T>S&&G(d[S],d[S+1])>i)S++;
        f[i]=(d[S]-i)*(d[S]-i-1)/2+f[d[S]]+a[i];
        while(T>S&&G(d[T-1],d[T])<G(d[T],i))T--;
        d[++T]=i;
    }
    printf("%lld\n",f[0]);
    return 0;
}
快速理解OSI七层模型(举例理解,数据传输过程,深入理解OSI七层模型) 我们需要了解互联网的本质是一系列的网络协议,这个协议就叫做OSI协议(开放系统互联(Open System Interconnection)),它是由ISO(国际标准化组织)定义的。 需要注意,随着时代的发展,OSI已经被TCP/IP 4层模型淘汰,在当今世界上并没有大规模的使用。 那么对于OSI,人们按照功能不同,分工不同,人为的将OSI的分为七层。实际上这七层是并不存在的,也就是说没有这些概念,而我们今天提到的七层概念,只是人为的划分而已。目的只是为了让大家更好地理解这些都是用来做什么的。 阅读详情

相关推荐

ISP Tuning实战指南:从基础到高级的色彩与亮度优化

本文详细介绍了ISP Tuning的基础概念与高级调优技术,包括黑电平校正(BLC)、自动白平衡(AWB)、色彩校正矩阵(CCM)和Gamma曲线调整等核心算法。通过实战案例和调试技巧,帮助工程师提升摄像头成像质量,解决高光过曝、暗部噪点等常见问题,适用于智能门铃、车载摄像头等多种场景。

weixin_30879169的博客 108

【上海交大OJ1061】小M的服务器

我们需要将一个文件复制到n个服务器上,这些服务器的编号为S1, S2, …, Sn。 首先,我们可以选择一些服务器,直接把文件复制到它们中;将文件复制到服务器Si上,需要花费ci > 0的置放费用。对于没有直接被复制文件的服务器Si来说,它依次向后检查Si+1,

sadnohappy 850

手把手教你为RV1126开发板点亮3寸MIPI屏(ST7701S驱动,含设备树配置避坑点)

本文详细介绍了RV1126开发板适配3寸MIPI屏幕(ST7701S驱动)的全流程,涵盖硬件设计、信号完整性保障、屏幕时序参数计算及设备树配置等关键步骤。特别针对MIPI差分信号布线、电压匹配和设备树配置中的常见问题提供了实用解决方案,帮助开发者高效完成屏幕适配工作。

weixin_42524703的博客 333

[JZOJ5355] 【NOIP2017提高A组模拟9.9】保命

题目 描述 题目已经足够清晰了,所以不再赘述题目大意。 思考历程 一眼看下去,好像是一道大水题! 然而,再看几眼,感觉又不是一道水题! ...

weixin_30808253的博客 194

CAPL实战:从零构建HEX文件解析器,赋能UDS刷写

本文详细介绍了如何使用CAPL从零构建HEX文件解析器,以支持UDS刷写操作。通过解析HEX文件格式、设计状态机、优化数据结构与算法,实现高效准确的固件数据处理,并提供了与UDS刷写流程对接的工程化实践建议。

weixin_28726391的博客 443

GBASE南大通用GBase 8s数据库-从零开始的手动安装与实例配置指南

本文详细介绍了GBASE南大通用GBase 8s数据库的手动安装与实例配置全过程,包括环境准备、用户创建、安装包准备、实例创建、环境变量配置等关键步骤。通过实战经验分享和常见问题解决方案,帮助用户快速掌握GBase 8s数据库的安装与配置技巧,确保数据库稳定运行。

weixin_29209825的博客 455

[斜率优化][JZOJ5355]保命

题目描述为了加快社会主义现代化,建设新农村,农夫约(Farmer Jo)决定给农庄做一些防火措施,保障自己、猫、奶牛的生命安全。 农夫约的农庄里有N+1 座建筑,排成了一排,编号为0~N。对于0 <=i < N,建筑i 有w[i]头奶牛居住,与建筑i+1 距离为d[i]。建筑N 已装有消防栓,现在,农夫约决定再给k 个建筑安装消防栓,以减小安全隐患。 当火灾来临时,所有奶牛会从所在建筑开始,向大

ZLTJohn的博客 708

诊断测试工具CANoe.DiVa从入门到精通系列——开门见山

### 工具主要用于测试ECU的诊断功能。关于自动化诊断测试可以分为如下内容: ### -> 1、根据诊断需求规范进行cdd文件的编辑(现阶段主要是诊断问卷调查表); ### -> 2、新建Diva工程,导入对应的诊断数据库文件生成测试用例; ### -> 3、新建CANoe工程,导入CANoe.DiVa生成的Diva工程; ### -> 4、根据测试报告进行错误处理。

Soly_kun的博客 3549

NEFU 大一寒假训练九(优先队列)2020.02.13

Summary 我太菜了,E 题没加 endl 就交上去了,真想找块豆腐撞死 >﹏< 整体来说有一些重复的题,只要读懂题就不难了 观察代码大小也看出来有3个重复题了 Information No. Title AC/Submit A 买饭-优先队列 54/114 B 合并果子-优先队列 57/104 C 序列合并-优先队列 23/61 D 合成陨石-优先队列 48/1...

果光的博客 1193

39、低功耗处理器性能评估与Cortex - M23/M33低功耗特性解析

本文深入解析了Cortex-M23和Cortex-M33处理器的低功耗特性及其性能评估方法。介绍了ULPMark、CoreMark、IoTMark-BLE和SecureMark-TLS等基准测试在能效评估中的应用,并详细阐述了处理器的睡眠模式、系统控制寄存器(SCR)配置、WFI/WFE指令、退出时睡眠、挂起时发送事件(SEVONPEND)以及唤醒中断控制器(WIC)等关键低功耗机制。结合状态保留技术,展示了如何通过芯片级设计大幅降低泄漏电流,实现高效能低功耗的物联网与嵌入式系统设计。

Pepper的专栏 129

apollo-减速带通行

主车在通过减速带时速度不超过3m/s

是菜鸟o的博客 389

[JZOJ3432]服务器 ([上海交大OJ1061]小M的服务器)

Description 我们需要将一个文件复制到n个服务器上,这些服务器的编号为S1, S2, …, Sn。 首先,我们可以选择一些服务器,直接把文件复制到它们中;将文件复制到服务器Si上,需要花费ci > 0的置放费用。对于没有直接被复制文件的服务器Si来说,它依次向后检查Si+1, Si+2, …直到找到一台服务器Sj:Sj中的文件是通过直接复制得到的,于是Si从Sj处间接复制得到

Never give in. 628

蓝牙攻防实战指南:低功耗蓝牙

Bluetooth Low Energy(也称Bluetooth Smart)是经典蓝牙(Bluetooth Classic)的演进版本,设计目标是实现极低功耗,适用于无需频繁更换电池的设备,如智能手环、健康监测器、蓝牙标签等。Bluetooth Low Energy 是一项极具前景的无线通信技术,它以极低的功耗实现了短距离高效通信,广泛应用于智能设备和物联网领域。然而,其简化的协议结构和配对机制也带来了不小的安全挑战。

idlecloud0105的博客 682

【NOIP 2016 提高组】愤怒的小鸟

DescriptionSolution一题很显然的状压DP, 显然的转移是n3n^3的, 优化: 1. 很显然两个点决定一条抛物线后,可以预处理还能打到那些点。 2. 贪心的想,既然一个点迟早要打,为何不现在就打了它,复杂度:O(2n∗n)O(2^n*n)Code#include <iostream> #include <cstdio> #include <cstdlib> #include

1482

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

【JZOJ 3853】帮助Bsny

DescriptionBsny的书架乱成一团了,帮他一下吧! 他的书架上一共有n本书,我们定义混乱值是连续相同高度书本的段数。例如,如果书的高度是30,30,31,31,32,那么混乱值为3;30,32,32,31的混乱值也为3。但是31,32,31,32,31的混乱值为5,这实在是太乱了。 Bsny想尽可能减少混乱值,但他有点累了,所以他决定最多取出k本书,再随意将它们放回到书架上。你能帮助

1335

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

【JZOJ 4599】西行妖

Description 在幻想乡白玉楼有一棵终年不开花的樱树叫西行妖,西行寺幽幽子曾经为了让它开花而大量收集春度,然后被城管教训了一顿… 现在,幽幽子得到城管的允许,收集了S点春度,让西行妖重新开花。 西行妖可以被看成是一棵有n个节点的树,每个叶子节点被分配了1点春度就能开花(幽幽子不会无意义地使用她的春度,于是最多只会给同一个叶子节点分配1点春度),对于非叶子节点i,如果它有至少有1个儿子开花,

1140

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

【51NOD 1383】整数分解为2的幂

Description任何正整数都能分解成2的幂,给定整数N,求N的此类划分方法的数量!由于方案数量较大,输出Mod 1000000007的结果。 比如N = 7时,共有6种划分方法。7=1+1+1+1+1+1+1 =1+1+1+1+1+2 =1+1+1+2+2 =1+2+2+2 =1+1+1+4 =1+2+4Solution显然,当n为奇数时(除了1),fn=fn−

1031

【JZOJ 3861】【JSOI2014】支线剧情2

DescriptionSolution显然的树形DP, 设gxg_x表示以点x根,一次存档也没有,跑完所有子树的时间, 设fxf_x表示以x的子树全部跑完所需的时间,可以有存档,也可以没有,(包含从根走下来的时间) 有三种情况, 1. 当前点存档,子树没有存档, 2. 当前点存档,子树只有一个存档, 3. 当前点存档,子树有一个存档,其他的点想存档要从根走下来,情况1,3比较好做,先考虑

985

【JZOJ 3052】剪草

Description 有N棵小草,编号0至N-1。奶牛Bessie不喜欢小草,所以Bessie要用剪刀剪草,目标是使得这N棵小草的高度总和不超过H。在第0时刻,第i棵小草的高度是h[i],接下来的每个整数时刻,会依次发生如下三个步骤: 1. 每棵小草都长高了,第i棵小草长高的高度是grow[i]。 2. Bessie选择其中一棵小草并把它剪平,这棵小草高度变为0。注意:这棵小草并没有死掉,它

969

【51NOD 1048】【51NOD 1383】整数分解为2的幂 V2

Description任何正整数都能分解成2的幂,给定整数N,求N的此类划分方法的数量! 比如N = 7时,共有6种划分方法。7=1+1+1+1+1+1+1 =1+1+1+1+1+2 =1+1+1+2+2 =1+2+2+2 =1+1+1+4 =1+2+4Solution设gi,j,kg_{i,j,k}表示一个序列组成2i2^i这个数,这个序列中最大的数为2j2^j,最

912

【JZOJ 4685】礼物

Description 夏川的生日就要到了。作为夏川形式上的男朋友,季堂打算给夏川买一些生日礼物。 商店里一共有种礼物。夏川每得到一种礼物,就会获得相应喜悦值Wi(每种礼物的喜悦值不能重复获得)。 每次,店员会按照一定的概率Pi(或者不拿出礼物),将第i种礼物拿出来。季堂每次都会将店员拿出来的礼物买下来。 众所周知,白毛切开都是黑的。所以季堂希望最后夏川的喜悦值尽可能地高。 求夏川最后最大的喜

908

【Codeforces 678E】Another Sith Tournament &【JZOJ 4648】锦标赛

Description Codeforces The rules of Sith Tournament are well known to everyone. JZOJ 403机房最近决定举行一场锦标赛。锦标赛共有N个人参加,共进行N-1轮。 抽象题意:有n个人要两两对决(n-1)场,已知每两个人对决的胜率,求一安排顺序,使1的最大胜率,输出最大的胜率。 Solution 拿到题就可以得出此题肯定是状态压缩DP,而D

891

【JZOJ 4937】与运算

DescriptionSolution肯定先把所有的数转成二进制, 设一个gig_i表示i这个二进制被多少个数包含,也就是这个数前面可以放多少个数(满足aia_i and i=i), 这样就可以状态压缩DP了, 当前做到了i,枚举在i的基础上减掉一位转移到j,那么转移式为:fj=fi+j∗(gj−gi)f_j=f_i+j*(g_j-g_i)复杂度:O(mlog(m))O(m\log(m))Co

884

【JZOJ 4630】计数

Description 给出n和k,求出n位的k进制数中不包含两个连续的0的数,且没有前导 0的数有几个。如要求7位的十进制数,如1010230算一个,1000198和0011234 不算, Solution 普通DP: fi,0=fi−1,1 fi,1=m∗(fi−1,0+fi−1,1) 转化一下: fi=m∗(fi−1+fi−2) 套上高精度即可。 Code

878

【JZOJ 4816】label

Solution 这道题O(nm)的暴力显然把,只要DP加一个前缀和即可, 打完以后发现,对于每个点,它的f数组开头和结尾是对称的,中间是一样的数。 现在我们来思考一下为什么: 把问题转换一下:如果问题是绝对值<=k,那么很显然,叶子节点全是1, 往上一层,开头的(k-1)个和结尾的(k-1)个有变化,并且对称(显然),中间的依旧相同, 再往上,就有2(k-1

867

【JZOJ 4345】【WC2016模拟】Fountain

DescriptionSolution考虑暴力n!n!枚举顺序,如何快速求答案, 设:sum=∑n−1i=1max(ai,ai+1)sum=\sum_{i=1}^{n-1}\max(a_i,a_{i+1}) 答案显然是Cnm−sum+nC^{n}_{m-sum+n}写出这个式子考虑转成DP: 设:f[i][j][k][l],表示从大到小做到第i个,当前有j个空隙必须放点,sum为k,l为0/1

827
上一篇: 【BZOJ 3907】【JZOJ 3431】网格
下一篇: 【JZOJ 4503】异或树
HOWARLI
博客等级 码龄11年 109粉丝 378原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值