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=;
if(x>y) swap(x,y);
if(y-x==) return a[x];
for(int i=x;i<=y;i++) ans=ans+a[i],ans%=mod;
return ans;
} void pre(){
memset(num,,sizeof(num));
for(int i=;i<=n;i++)
for(int j=;j<=n;j++){
num[i][j]=num[j][i]=getit(i,j);
}
} ll DP(int l,int r){
if(r-l+==) return ;
if(l>r) return 1ll<<;
if(b[l][r]) return dp[l][r];
b[l][r]=;
for(int k=l;k<=r;k++){
ll ret=1ll<<;
ret=DP(l,k)+DP(k+,r)+num[l][k]*num[k+][r];
dp[l][r]=min(dp[l][r],ret);
}
return dp[l][r];
} void work(){
cin>>n;
for(int i=;i<=n;i++) scanf("%lld",&a[i]);
pre();
memset(dp,,sizeof(dp));
memset(b,,sizeof(b));
printf("%lld\n",DP(,n));
} int main()
{
int t;cin>>t;
while(t--){
work();
}
return ;
}

【JZOJ5263】分手是祝愿的更多相关文章

  1. bzoj 4872: [Shoi2017]分手是祝愿 [期望DP]

    4872: [Shoi2017]分手是祝愿 题意:n个灯开关游戏,按i后i的约数都改变状态.随机选择一个灯,如果当前最优策略\(\le k\)直接用最优策略.问期望步数\(\cdot n! \mod ...

  2. 【BZOJ4872】分手是祝愿(动态规划,数学期望)

    [BZOJ4872]分手是祝愿(动态规划,数学期望) 题面 BZOJ 题解 对于一个状态,如何求解当前的最短步数? 从大到小枚举,每次把最大的没有关掉的灯关掉 暴力枚举因数关就好 假设我们知道了当前至 ...

  3. BZOJ_4872_[Shoi2017]分手是祝愿_概率与期望

    BZOJ_4872_[Shoi2017]分手是祝愿_概率与期望 Description Zeit und Raum trennen dich und mich. 时空将你我分开.B 君在玩一个游戏,这 ...

  4. BZOJ 4872 luogu P3750 [六省联考2017]分手是祝愿

    4872: [Shoi2017]分手是祝愿 Time Limit: 20 Sec  Memory Limit: 512 MB[Submit][Status][Discuss] Description ...

  5. 【BZOJ4872】分手是祝愿

    分手是祝愿 [题目大意] 有n 个灯,每个灯有两个状态亮和灭,我们用 1 来表示这个灯是亮的,用 0 表示这个灯是灭的,操作第 i 个开关时,所有编号为 i 的约数(包括 1 和 i)的灯的状态都会被 ...

  6. bzoj千题计划266:bzoj4872: [六省联考2017]分手是祝愿

    http://www.lydsy.com/JudgeOnline/problem.php?id=4872 一种最优解是 从大到小灯有亮的就灭掉 最优解是唯一的,且关灯的顺序没有影响 最优解 对每个开关 ...

  7. [BZOJ4872][六省联考2017]分手是祝愿(期望DP)

    4872: [Shoi2017]分手是祝愿 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 516  Solved: 342[Submit][Statu ...

  8. 【BZOJ4872】[Shoi2017]分手是祝愿 数学+期望DP

    [BZOJ4872][Shoi2017]分手是祝愿 Description Zeit und Raum trennen dich und mich. 时空将你我分开.B 君在玩一个游戏,这个游戏由 n ...

  9. 2017 [六省联考] T5 分手是祝愿

    4872: [Shoi2017]分手是祝愿 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 458  Solved: 299[Submit][Statu ...

  10. SHOI2017 分手是祝愿

    分手是祝愿 有

随机推荐

  1. mybatis foreach批量处理

    ---恢复内容开始--- http://blog.csdn.net/jiesa/article/details/52185617 foreach属性 属性 描述 item 循环体中的具体对象.支持属性 ...

  2. Day004课程内容

    本节主要内容: 1.列表List L = [1,'哈哈哈','吼吼',[1,8,0],('"我“,"叫","元","组"),”ab ...

  3. java多线程之ScheduleThreadPoolExecutor

    ScheduledThreadPoolExecutor 介绍   ScheduledThreadPoolExecutor 是一个可以实现定时任务的 ThreadPoolExecutor(线程池).比 ...

  4. Linux上安装JDK1.7步骤

    1.使用SecurtCRT连接上Linux,把jdk的压缩包传递过去:(传递的方法在我的博客中也有写,参考之前的博客) 2.解压缩jdk:tar -zxvf jdk-7u55-linux-i586.t ...

  5. 2019沈阳网络赛B.Dudu's maze

    https://www.cnblogs.com/31415926535x/p/11520088.html 啊,,不在状态啊,,自闭一下午,,都错题,,然后背锅,,,明明这个简单的题,,, 这题题面不容 ...

  6. 基础知识:Mysql基本操作命令

    启动mysql :  mysql -hlocalhost -uroot -p 创建数据库:create database 数据库名字; 指定要操作的数据库:use 数据库名字; 查看数据表建表语句:s ...

  7. Python3实战Spark大数据分析及调度 (网盘分享)

    Python3实战Spark大数据分析及调度 搜索QQ号直接加群获取其它学习资料:715301384 部分课程截图: 链接:https://pan.baidu.com/s/12VDmdhN4hr7yp ...

  8. Winform中通过代码设置DevExpress的TextEdit的类型为Numbernic

    场景 使用DevExpress的EditText控件时,需要限制其输入类型为数字. 正常来说是窗体上拖拽一个TextEdit,然后在设计窗口点击小三角,选择Change Mask 但是如果说TextE ...

  9. Winform中使用zxing和Graphics实现自定义绘制二维码布局

    场景 zxing.dll下载 https://download.csdn.net/download/badao_liumang_qizhi/11623214 效果 实现 根据上面文章中将简单的二维码生 ...

  10. Java 内存溢出分析

    原文地址:Java 内存溢出分析 博客地址:http://www.moonxy.com 一.前言 Java 的 JVM 的内存一般可分为 3 个区:堆(heap).栈(stack)和方法区(metho ...