【JZOJ5263】分手是祝愿
Description
请注意本题的数据范围。
Input
Output
Sample Input
2
2
15 19
3
30 40 20
Sample Output
285
2600
Hint
数据范围:
30% n<=9
100% n,a<=100, T<=5
Source
动态规划 /DFS /分治
题解:
区间DP裸题,注意a可以等于100.
代码:
#include <cstdio> #include <iostream> #include <algorithm> #include <cstring> #include <cmath> #include <iostream> #define MAXN 1000 #define ll long long #define mod 100 using namespace std; ll a[MAXN],b[MAXN][MAXN],dp[MAXN][MAXN],num[MAXN][MAXN]; int n;ll getit(int x,int y){ll ans=0;if(x>y) swap(x,y);if(y-x==0) return a[x];for(int i=x;i<=y;i++) ans=ans+a[i],ans%=mod;return ans; }void pre(){memset(num,0,sizeof(num));for(int i=1;i<=n;i++)for(int j=1;j<=n;j++){num[i][j]=num[j][i]=getit(i,j);} }ll DP(int l,int r){if(r-l+1==1) return 0;if(l>r) return 1ll<<50;if(b[l][r]) return dp[l][r];b[l][r]=1;for(int k=l;k<=r;k++){ll ret=1ll<<60;ret=DP(l,k)+DP(k+1,r)+num[l][k]*num[k+1][r];dp[l][r]=min(dp[l][r],ret);}return dp[l][r]; }void work(){cin>>n;for(int i=1;i<=n;i++) scanf("%lld",&a[i]);pre();memset(dp,37,sizeof(dp));memset(b,0,sizeof(b));printf("%lld\n",DP(1,n)); }int main() {int t;cin>>t;while(t--){work();}return 0; }
转载于:https://www.cnblogs.com/renjianshige/p/9657566.html
【JZOJ5263】分手是祝愿相关推荐
- BZOJ 4872 luogu P3750 [六省联考2017]分手是祝愿
4872: [Shoi2017]分手是祝愿 Time Limit: 20 Sec Memory Limit: 512 MB [Submit][Status][Discuss] Description ...
- 2017 [六省联考] T5 分手是祝愿
4872: [Shoi2017]分手是祝愿 Time Limit: 20 Sec Memory Limit: 512 MB Submit: 458 Solved: 299 [Submit][Sta ...
- LOJ#2145. 「SHOI2017」分手是祝愿
LOJ#2145. 「SHOI2017」分手是祝愿 题目描述 Solution 首先有一个结论: 灯的状态序列a1,a2...ana_1,a_2...a_na1,a2...an唯一对应了一个最优 ...
- 4872: [Shoi2017]分手是祝愿
4872: [Shoi2017]分手是祝愿 Time Limit: 20 Sec Memory Limit: 512 MB Submit: 153 Solved: 109 [Submit][Statu ...
- 【BZOJ4872】分手是祝愿
分手是祝愿 [题目大意] 有n 个灯,每个灯有两个状态亮和灭,我们用 1 来表示这个灯是亮的,用 0 表示这个灯是灭的,操作第 i 个开关时,所有编号为 i 的约数(包括 1 和 i)的灯的状态都会被 ...
- bzoj 4872 [Shoi2017]分手是祝愿
4872: [Shoi2017]分手是祝愿 Time Limit: 20 Sec Memory Limit: 512 MB Submit: 138 Solved: 97 [Submit][Status ...
- [六省联考2017]分手是祝愿(期望+DP)
题解 很容易想出来最优策略是什么. 就是从n到1看到开着的灯就把它关了 我们预处理出当前状态把灯全部关闭后的最少步数cnt 然后我们的主人公就要瞎按... 设dp[i]代表当前状态最优解为i步时走到d ...
- JZOJ 5263. 【NOIP2017模拟8.12A组】分手是祝愿
Description Input Output Sample Input 2 2 15 19 3 30 40 20 Sample Output 285 2600 Data Constraint So ...
- YBTOJ洛谷P3750:分手是祝愿(期望dp)
传送门 文章目录 解析 代码 解析 首先,开关开关两次等于没动,所有对于一个解来说,开关的状态只有开与不开之分 接下来的一个关键点是:每一个开关的效果无法被其他开关操作的组合代替 所以这个题应该只有唯 ...
最新文章
- 为什么ConcurrentHashMap的读操作不需要加锁?
- sql移动加权计算利润_一文搞懂股票指数的4种加权方式
- 一张照片攻破人脸识别系统:能点头摇头张嘴
- 在主线程中慎用WaitForSingleObject (WaitForMultipleObjects)
- python动态显示进度条_实例详解python如何轻松实现动态进度条
- matlab 28m35,F28M35H52C
- 【C语言简单说】十三:变量的生命周期
- react学习(56)--常见HTTP错误
- HTTP笔记-SOAP基本概念
- Web Hacking 101 中文版 十四、XML 外部实体注入(一)
- Android 系统(179)--- .ko 加载失败
- 服务器文件地址怎么写,服务器里的文件链接地址怎么写
- 书籍推荐:《Secrets of the Oracle Database》
- python画好看的图-Python竟能画这么漂亮的花,帅呆了(代码分享)
- c#重点知识解答(五)
- 用51单片机和esp8266实现通过手机app控制单片机小灯
- ftp服务器vsftpd配置文件,vsftpd配置文件详解及ftp服务器搭建
- 腾讯AI开放平台使用尝试:通过文本翻译API进行汉译英
- 文件存储名片java_java做的名片管理系统
- 2021汽车行业内容营销白皮书
热门文章
- 算法高级(23)-彩虹表(Rainbow Table)
- Maven profile整合Spring profile
- 元宇宙将如何改变未来的交通出行
- k8s_day06_03
- vue ElementUI 表格筛选框的高度设置,超出一定高度,显示滚动条
- 新手程序员要不要学英语?
- 史上最详cxf-Springmvc-maven实现webservice教程
- eslint --fix found some errors. Please fix them and try committing again.
- 极狐GitLab 15.3 | issues 中建任务、许可证合规分析,超 30 项更新全面来袭!
- before和after怎么区分_CSS 巧用 :before和:after