ZOJ 4027 2018浙江省赛D Sequence Swapping(DP)

Stanford CS230深度学习(一) 斯坦福CS230可以作为深度学习的入门课,最近我也在跟着看视频、完成编程作业。首先列出使用的资源链接,然后给出第一课的理解和编程作业的代码。 所有资料如下: 一、课程连接: b站课堂讲授版:Stanford CS230(吴恩达 深度学习 Deep Learning | Autumn 2018)(中英双字幕) (一共10个视频,每周一个,但是每个视频对应下面的配套视频较多) Coursera配套视... 阅读详情

题目链接:zoj 4027

一直在准备考试以及麻痹自己的学习,所以完美的避开了整个四月,唉

输入s之后给将左右括号分别存放在c,d两个数组中,并给每个左右括号编号,dp【i】【j】代表将第i个左括号放到第j个右括号之后得到的分数(此时序号比 i 大的所有左括号都已经放置完毕,并且dp【i】【j】包含了这些值)

maxx=max(dp【k】);(k>=j)

dp[i][j]=(d[j]-d[i])*c[i]+maxx;(d【i】是只计算右括号的前缀和)

找前面左括号最大值的时候不妨从右到左遍历,这样每次用O(1)时间更新就行了

之前把maxx的初始值设为0了,真的坑,wa了20多发!!

智商是硬伤。。。

#include<iostream>
#include<cstdio>
#include<vector>
#include<set>
#include<map>
#include<string.h>
#include<cmath>
#include<algorithm>
#include<queue>
#include<stack>
#define LL long long
#define mod 1000000007
#define inf 0x3f3f3f3f
#define sqr(a) (a)*(a)
#define For(i,m,n) for(int i=m;i<=n;i++)
#define Dor(i,n,m) for(int i=n;i>=m;i--)
#define lan(a,b) memset(a,b,sizeof(a))

using namespace std;

LL dp[1010][1010];
int a[1010];
int b[1010];
int tt[1010];
int c[1010];
int d[1010];

int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        lan(a,0);
        lan(b,0);
        lan(tt,0);
        lan(c,0);
        lan(d,0);
        lan(dp,0);
        int n;
        scanf("%d",&n);
        char s[1010];
        getchar();
        scanf("%s",s);
        For(i,1,n)
        scanf("%d",&b[i]);
        int p=0,q=0;
        int tem=0;
        For(i,0,n-1)
        {
            if(s[i]=='(')
            {
                a[i+1]=0;
                c[++p]=b[i+1],tt[p]=tem;
            }
            else
            {
                 d[q+1]=d[q]+b[i+1];
                q++;
                tem++;
                a[i+1]=1;
            }

        }
        LL ans=0;
        Dor(i,p,1)
        {
            int temp=tt[i];
            LL maxx=-inf;
            Dor(j,q,temp)
            {
                maxx=max(maxx,dp[i+1][j]);
                dp[i][j]=(d[j]-d[temp])*c[i]+maxx;
                ans=max(ans,dp[i][j]);
            }
        }
        printf("%lld\n",ans);
    }
    return 0;
}

芯片设计|SoC芯片设计流程 与 软硬件协同设计 SoC通常被称作系统级芯片或者片上系统,作为一个完整的系统,**其包含了硬件和软件两部分内容**。这里所说的硬件指SoC芯片部分,**软件是指运行在SoC芯片上的系统及应用程序**。既然它是由软件和硬件组合而成,则在进行系统设计时,**就必须同时从软件和硬件的角度去考虑。** 阅读详情

相关推荐

LTspice基础教程-009.LTspice波形测量

<<==上一篇:LTspice基础教程-008.LTspice PWL设置 >>==下一篇:LTspice基础教程-010. 首篇博客文末提供所有相关资源百度网盘分享链接

gaoyong_wang的博客 4万+

【18浙江省赛】D - Sequence Swapping (DP)

赛场上队友对着这题狂码130余行,贡献全场1/4的段错误,还是太年轻了。 思路是DP 将第i个左括号放在j及j右边能获得的最大收益记为状态。 i号‘(’ 放在 j位 ,则i右边的左括号都在j+1及以后的位置 或者i不放到j位,只沿用i放到j+1时的结果。 状态转移方程为: dp[i][j] = max(dp[i+1][j+1]+a[I]*(i右边 i到j的位置差个右括号权值...

nymph_h的博客 625

IP白名单校验

支持格式: 1、127.0.0.1 // 指定固定IP 2、127.0.0.1-127.0.0.128 // 可使用“-”来表示一个IP区间,支持跨IP段(一般不会出现这种情况,跨IP段则配置多个规则) 3、127.0.* // 2~4位IP段可...

2199

D:Sequence Swapping

BaoBao has just found a strange sequence {<, >, <, >, , <, >} of length in his pocket. As you can see, each element <, > in the sequence is an ordered pair, where the first el...

weixin_30849591的博客 239

苍穹外卖项目面试总结话术

美食速递这个项目最初是我参与制作的大创项目,是一款为中南学生提供校园外卖送至宿舍服务的软件,包含系统管理后台和小程序端两部分。其中系统管理后台主要提供给食堂内部员工使用,可以对食堂各个窗口、员工、订单、菜品等进行维护管理;小程序端可以在线浏览菜品、添加购物车、下单等,由学生兼职做跑腿送餐上门服务。这是个前后端分离的项目,我主要是负责后端的用户登录、员工管理,菜品管理,订单管理模块的编码实现。

qq_45195447的博客 1万+

克里金插值(Kriging)在MATLAB中的实现(克里金工具箱)

一,直接献上克里金插值MATLAB工具箱 链接:https://pan.baidu.com/s/1p0lt2G8KQ-els7Dyw5jPFg 提取码:wcss 下载后将该程序添加到MATLAB安装文件夹中的/toolbox下,然后在设置路径中添加该程序文件为默认路径即可调用程序。 资源中内附程序使用说明PDF。 二、本人实际操作代码如下所示,标注如下 load data1 %载入数据 %模型参...

qq_40937675的博客 6万+

D:Sequence Swapping ZOJ 4027 dp

http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=4027dp题,比赛的时候的知道是dp,但是就是想不出来,回来虽然想出来了,但是调了2个多小时才调出来。好像同队的大佬也有用线段树写的,0rz。注意理解下,每个左括号都可以换到他右边的所有右括号,但是前提是这个右括号要先和他们之间的所有左括号先换一下,这个左括号要和他们之间所有...

i11000的博客 495

从零构建智能监控系统:ZLMediaKit与SpringBoot的RTSP流处理实战

本文详细介绍了如何从零构建智能监控系统,结合ZLMediaKit与SpringBoot实现RTSP流处理。通过多协议支持、高性能架构设计及工业级部署优化,解决传统监控方案的兼容性差、延迟高等问题,适用于物联网和智能安防领域。

weixin_29002209的博客 370

ZOJ4027 浙江2018省赛 Sequence Swapping (DP)

题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5768 题意:给一只含括号符号的串,每个符号一个权值v[i],相邻的'('和')'可以交换[左括号在前],贡献为两个符号的权值积,即第i位和第i+1位若符合交换条件,则交换之后答案值加上v[i]*v[j],求最大的答案值 思路:把左括号和右括号分别存在两个数组里,然...

AmarisCR的博客 442

别再为H5扫码头疼了!用Vue3 + vue-qrcode-reader,5分钟搞定移动端摄像头调用(附完整代码)

本文详细介绍了如何使用Vue3和vue-qrcode-reader快速实现移动端扫码功能,解决H5开发中常见的摄像头调用和兼容性问题。通过完整的代码示例和优化技巧,帮助开发者高效集成二维码识别功能,提升用户体验和开发效率。

weixin_33737134的博客 513

电子电器架构刷写方案——General Flash Bootloader

### 文章大体有如下内容: ### 1、简介 ### 2、刷写系统概述 ### 3、Flash Bootloader刷写流程 ### 4、Flash Bootloader架构介绍 ### 5、关于刷写的思考

Soly_kun的博客 2209

ZOJ 4027 Sequence Swapping(DP+思维)

                大致题意:给你一些括号,有左括号有右括号,每一个括号对应一个数值vi。当左右括号i、j相邻并且左括号在左、右括号在右,你可以选择交换这两个括号的位置,并且产生一个vi*vj的权值。交换次数不限,现在问你能够产生的最大权值和是多少。        首先,对于左括号来说,如果往右移了一位,即与某一个右括号交换了,那么就一定不会交换回来。这是一个很明显的无后效性,因此考虑...

alpc_qleonardo 786

YOLOv11的代数不变量解释:Syzygy模分析特征重要性,用交换代数揭示卷积核的语义相关性

本文提出了一种基于代数几何与交换代数的创新方法,特别是运用Syzygy模理论,对YOLOv11目标检测算法的卷积核语义相关性进行数学解释。研究揭示了YOLO系列算法演进背后的代数结构特征,建立了网络组件与多项式环、理想簇等代数概念的对应关系。通过构建分层的准同构代数系统,分析了YOLOv11在不同尺度下保持语义不变性的数学本质。文章系统阐述了Syzygy模在CNN特征冗余分析、跨层依赖关系建模和语义聚类中的应用,并提出了适用于动态稀疏训练的改进算法。该理论框架为深度神经网络的解释性研究提供了新的数学工具,同

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1270

ZOJ-4027 & 2018浙江省赛-D题 Sequence Swapping

2018浙江省赛-D题 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=4027 题意: 当且仅当sk='('并且s(k+1)=')'时可以交换二者,并且得到两者价值乘积的价值,问最多可以得到多少价值。 思路: 用的dp做法 首先,这道题要求只能左括号和右括号换,这就决定了每个左括号能到达的最右位置,如果这个括号...

霖的博客 468

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【ZOJ-4027】 Sequence Swapping(2018浙江省赛-D题)

BaoBao has just found a strange sequence {&lt;s1,v1&gt;, &lt;s2,v2&gt;, ... &lt;sn,vn&gt;} of length n in his pocket. As you can see, each element &lt;si,vi&gt; in the sequence is an ordered pair, whe...

qq_40792618的博客 2548

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

zoj 4027 2018浙江acm省赛 Problem D. Sequence Swapping

链接: https://cn.vjudge.net/problem/ZOJ-4027 思路: dp 第二次做还是没有做出来。。。不过的确是个好题。 首先就是要确定dp状态的定义,这里我把dp[i][j] 定义为将第i个左括号移动到 位置&gt;=j 的最大价值。 其实可以发现每个左括号其实都是有一个可移动上下界范围的。我如果想要将第i个括号移动到位置j  那么肯定第 i+1 个括号在 &gt...

yjt9299的博客 457

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

ZOJ 4062 Plants vs. Zombies(二分+贪心) 2018ACM-ICPC青岛现场赛E

Plants vs. Zombies 题解:首先肯定可以想到走过去再回来是肯定浪费步数的,最多的只能是相邻的两个植物来回,大致就呈一个ZZZ字形走过,最后要注意最后一步停在哪里。其次最大化最小值,二分即可。(深深吐槽%\%%,2000ms2000ms2000ms刚好卡过233333323333332333333,然后再交就tletletle,最后改成ceilceilceil才稳的) 代码 #inc...

Eternally831143的博客 3185

Sequence Swapping ZOJ - 4027

题目让我们在条件满足s[i] = '(' &amp;&amp; s[i + 1] = ')'时可以选择进行交换两者位置, 并得到两者的乘积,可以在任何时候,任何地点进行交换 第一眼就觉得是dp,但是按区间dp想了半天没想法,就没做。。 这题遍历一遍括号就能解决,dp数组中记录‘)’向右移的情况 b2数组记录'('前缀和,b2[i] * b[k]代表将输入的字符数组中位于k位置的‘)’移到第i...

ms_dp的博客 652

Zoj 4027 Sequence Swapping (线性dp)

Sequence Swapping Time Limit: 1000 ms Memory Limit: 65536 KB 题意 给出一个括号序列,每个括号对应一个值,当相邻两个括号k为’ ( ‘,k+1为’ ) '时可以交换,得到括号对应值乘积的贡献,可以进行任意次数的交换,求得到的最大贡献值。 范围 ( 1 ≤ n ≤ 10^3 , −10 ^ 3 ≤ vi ≤ 10 ^ 3 )...

October の 补题记录 931

Sequence Swapping(二维dp)

BaoBao has just found a strange sequence {<, >, <, >, , <, >} of length in his pocket. As you can see, each element <, > in the sequence is an ordered pair, where the first element in the pair is the left parenthesis ‘(’ or the ri

weixin_45776448的博客 285

2018浙江省赛(ACM) The 15th Zhejiang Provincial Collegiate Programming Contest Sponsored by TuSimple

比赛链接 F. Now Loading!!! Time Limit: 1 Second Memory Limit: 131072 KB DreamGrid has integers . DreamGrid also has queries, and each time he would like to know the value of for a given numbe...

FFOYeah的博客 1497

2018浙江省赛(ACM) The 15th Zhejiang Provincial Collegiate Programming Contest Sponsored by TuSimple...

我是铁牌选手 这次比赛非常得爆炸,可以说体验极差,是这辈子自己最脑残的事情之一。 天时,地利,人和一样没有,而且自己早早地就想好了甩锅的套路。 按理说不开K就不会这么惨了啊,而且自己也是毒,不知道段错误也可以是MLE,而且我的内存就是卡了那么一点点,在比赛紧张的状态下人也变傻了吧。 这次的题目难度是两边到中间一次递增的,但是我也不懂榜怎么会那样 A PeakTime Limit:1...

weixin_33953384的博客 436

ZOJ - 4062(二分)

题目 题意:一个机器人可以移动浇水,浇一次花防御值加a[i],花园的防御值为最小花的防御值,所以求最小防御值最大,二分答案 检查答案时,从左到右遍历,小于mid时左右横跳即可 (坑是真的多。。。) #include<stdio.h> #include<iostream> #include<algorithm> #include<string.h> using namespace std; #define LL long long #define N 10001

weixin_45714726的博客 237

zoj4062 Plants vs. Zombies 二分+模拟(贪心的思维)

题目传送门 题目大意:有n个植物排成一排,标号为1-n,每株植物有自己的生长速度ai,每对植物浇一次水,该株植物就长高ai,现在机器人从第0个格子出发,每次走一步,不能停留,每一步浇一次水,总共可以走m步,问最矮的植物最高是多少。 思路:   一般此类最小值最大问题都是二分,此题显然也是可以二分植物的高度的。   确定某一个高度后,也确定了每个植物需要浇几次水,而对于一株植物来说...

weixin_30445169的博客 225

ZOJ - 4062(2018 青岛现场赛) 二分

题目链接:https://vjudge.net/problem/ZOJ-4062   解题思路: 二分一个最小值,那么所有位置必定要大于等于这个值,那么就在一个位置上加满之后再向后面一定,一直横向左右跳的加就行了,直到终点在n或者n-1位置。   #include &lt;iostream&gt; #include &lt;algorithm&gt; #include &lt;cstd...

过路人丶的博客 339

ZOJ 4027 Sequence Swapping(DP)题解

题意:一串括号,每个括号代表一个值,当有相邻括号组成()时,可以交换他们两个并得到他们值的乘积,问你最大能得到多少 思路:DP题,注定想得掉头发。 显然一个左括号( 的最远交换距离由他右边的左括号的最终位置决定,那么我们可以从右边开始做。我们用dp[i][j]表示第i个左括号交换到第j个位置后,他和他后面左括号所能得到的最大值。显然,dp[i][j] = i交换得到的值 + 后面左括号产生的最...

weixin_33795743的博客 177
上一篇: Codforces 401D
下一篇: zoj 4029 2018浙江省赛F Now Loading!!!
Dale_zero
博客等级 码龄9年 10粉丝 174原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值