HDU - 3506 Monkey Party
2024-09-03 03:33:36
思路:
平行四边形不等式优化dp
这不就是石子归并(雾
代码:
#pragma GCC optimize(2)
#pragma GCC optimize(3)
#pragma GCC optimize(4)
#include<bits/stdc++.h>
using namespace std;
#define y1 y11
#define fi first
#define se second
#define pi acos(-1.0)
#define LL long long
#define LD long double
//#define mp make_pair
#define pb push_back
#define ls rt<<1, l, m
#define rs rt<<1|1, m+1, r
#define ULL unsigned LL
#define pll pair<LL, LL>
#define pli pair<LL, int>
#define pii pair<int, int>
#define piii pair<int, pii>
#define pdd pair<long double, long double>
#define mem(a, b) memset(a, b, sizeof(a))
#define fio ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
//head const int N = 2e3 + ;
int a[N], sum[N], n;
int dp[N][N], s[N][N];
int main() {
while(~scanf("%d", &n)) {
for (int i = ; i <= n; ++i) scanf("%d", &a[i]), a[i+n] = a[i];
for (int i = ; i <= *n; ++i) sum[i] = sum[i-] + a[i];
for (int i = *n; i >= ; --i) {
dp[i][i] = ;
s[i][i] = i;
for (int j = i+; j <= *n; ++j) {
dp[i][j] = 0x7f7f7f7f;
for (int k = s[i][j-]; k <= s[i+][j]; ++k) {
if(k+ <= j && dp[i][k]+dp[k+][j]+sum[j]-sum[i-] < dp[i][j]) {
dp[i][j] = dp[i][k]+dp[k+][j]+sum[j]-sum[i-];
s[i][j] = k;
}
}
}
}
int ans = dp[][n];
for (int i = ; i+n- <= *n; ++i) ans = min(ans, dp[i][i+n-]);
printf("%d\n", ans);
}
return ;
}
最新文章
- AngularJS_01之基础概述、设计原则及MVC设计模式
- spring boot(三):Spring Boot中Redis的使用
- linux下vi命令大全[转]
- mkdir:批量创建文件夹
- Hadoop 2.4.1 Map/Reduce小结【原创】
- Android程序启动程序与页面的跳转
- C线程同步/异步
- 读书笔记 effective c++ Item 32 确保public继承建立“is-a”模型
- oracle配置监听图形界面不出来解决方法
- ICC_lab总结——ICC_lab4:时钟树综合
- 关于close和shutdown
- 验证码 jsp
- Openstack_O版(otaka)部署_镜像服务glance部署
- Intellij IDEA插件开发入门
- 巩固java(一)----java与对象
- C# - 操作符
- Domain logic approachs
- Windows PowerShell基本语法及常用命令
- 让VCL的皮肤用在手机程序里 让安桌程序不山寨[转]
- spec文件写作规范
热门文章
- 关于RNN(Recurrent Neural Network)的一篇文章
- CF1190D Tokitsukaze and Strange Rectangle
- 《你必须知道的495个C语言问题》读书笔记之第15-20章:浮点数、风格、杂项
- ValueError: row index was 65536, not allowed by .xls format
- shell如果文件夹不存在则创建
- 题目13 在O(1)时间删除链表节点
- Dijstra_优先队列_前向星
- FastAdmin
- 系统学习机器学习之神经网络(三)--GA神经网络与小波神经网络WNN
- 计算机概论 64bit和32bit的CPU的不同