hdu-6024

news/2024/10/5 8:19:42/

hdu-6024

struct node
{int x, c;bool operator<(const node &a) const{return x < a.x;}
};
// dp[i][0]为到第i个教室且第i个教室不建糖果店的花费前缀和,dp[i][1]为到第i个教室且第i个教室建糖果店的花费前缀和
int dp[N][2];
void solve()
{int n;while (cin >> n){vector<node> a(n + 1);for (int i = 1; i <= n; i++){cin >> a[i].x >> a[i].c;dp[i][0] = dp[i][1] = INF;}sort(a.begin() + 1, a.end()); // 按坐标排序dp[1][1] = a[1].c;dp[1][0] = INF;for (int i = 2; i <= n; i++){int sum = 0;dp[i][1] = min(dp[i - 1][0], dp[i - 1][1]) + a[i].c; // i教室建店此处一定花费a[i].c,所以再加上之前较优的花费for (int j = i - 1; j >= 1; j--){sum += (i - j) * (a[j + 1].x - a[j].x); // sum为从j+1教室到i教室的花费和dp[i][0] = min(dp[i][0], dp[j][1] + sum); // 判断j教室建店是不是最优}}cout << min(dp[n][0], dp[n][1]) << endl;}
}

http://www.ppmy.cn/news/1534848.html

相关文章

git 基本原理

文章内容来源于视频 举个案例&#xff0c;家族里面有一本记载祖传秘籍的菊花宝典&#xff0c;这本菊花宝典的正本存储在家族祠堂里面&#xff0c;每一个家庭从正本复制一本存在自己家中&#xff0c;称为副本。这个过程称为clone 一个家庭需要再菊花宝典中添加技能&#xff0c…

在 ArkTS 网络请求中,重新封装一下 http 模块

在ArkTS中&#xff0c;重新封装http模块可以提供一个更简洁、更易于使用的API&#xff0c;同时隐藏底层细节&#xff0c;使开发者能够更专注于业务逻辑。以下是一个简单的示例&#xff0c;展示了如何重新封装鸿蒙系统的kit.NetworkKit中的http模块&#xff1a; // 创建一个新的…

微信小程序数据操作指南:从绑定到更新

微信小程序数据操作指南&#xff1a;从绑定到更新 在微信小程序开发中&#xff0c;数据操作是核心环节之一。微信小程序提供了一系列简洁而强大的数据操作方法&#xff0c;帮助开发者轻松实现数据的绑定、更新和渲染。本文将详细介绍微信小程序中常用的数据操作方法&#xff0…

数据结构阶段测试2--(试题解析)

数据结构阶段测试2–&#xff08;试题解析&#xff09; 选择题 将⻓度为n的单链表连接在⻓度为m的单链表之后,其算法的时间复杂度为() A. O(m) B. O(1) C. O(n) D. O(mn) 解析思路 链表的尾插操作 &#x1f4a1; 答案&#xff1a;A 单链表由于需要找到最后⼀个⾮空节点…

WebGL在低配置电脑的应用

在低配置电脑上实现WebGL渲染&#xff0c;需要采取一系列优化策略来减轻硬件负担&#xff0c;提升渲染性能。以下是一些详细的实现方法&#xff1a; 1. 优化WebGL代码和设置 a. 减少绘制调用次数 通过合并绘制操作、使用批量绘制等方式&#xff0c;尽量减少绘制调用次数。这可以…

c#中的功能优势

装箱和拆箱 性能消耗的直接体现 int iterations 10000000; // 进行一千万次迭代Stopwatch stopwatch new Stopwatch();// 非装箱测试stopwatch.Start();for (int i 0; i < iterations; i){int x i; // 纯值类型操作&#xff0c;无装箱}stopwatch.Stop();Console.Writ…

Chromium 硬件加速开关c++

选项页控制硬件加速开关 1、前端代码 <settings-toggle-button id"hardwareAcceleration"pref"{{prefs.hardware_acceleration_mode.enabled}}"label"$i18n{hardwareAccelerationLabel}"><template is"dom-if" if"[…

BugReport中的App Processor wakeup字段意义

一、功耗字段意义&#xff1a; App processor wakeup:Netd基于xt_idletimer 待机下监视网络设备的收发工作状态&#xff0c;即当设备发生联网从休眠态变成为唤醒态时&#xff0c;会记录打醒者的uid(uid大于0)和网络类型(wifi或数据类型)、时间戳 实际日志&#xff1a;我们在B…