hdu 4512 吉哥系列故事——完美队形I(最长上升公共子串)

避坑指南:Synopsys VCS工具安装中的5个常见错误及解决方案 本文详细解析了Synopsys VCS工具安装过程中的5个常见错误,包括安装包解压失败、版本选择错误、权限配置不当、环境变量陷阱及依赖缺失问题,并提供了经过验证的解决方案和最佳实践,帮助工程师高效完成VCS部署。 阅读详情

求最长上升公共子串

f【i】【j】表示a(1,i),b(1,j)取以b【j】结尾的最大公共上升子串的大小

当a【i】 != b【j】 时,f【i】【j】 = f【i - 1】【j】

否则:f【i】【j】 = max { f【i - 1】【(1……j - 1)】 && (a[i] > b[1……j - 1])};

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAXN 205
int a[MAXN];
int f[MAXN][MAXN];

int main()
{
    int T, N;
    for(scanf("%d", &T); T--; )
    {
        scanf("%d", &N);
        for(int i = 1; i <= N; ++i)
            scanf("%d", &a[i]);
        memset(f, 0, sizeof(f));
        int ans = 1;
        for(int i = 1; i <= N; ++i)
        {
            int max = 0;
            for(int j = N; i < j;  --j)
            {
                f[i][j] = f[i-1][j];//假设不相等

                if((a[i] == a[j]) && (f[i][j] < max + 1))//当相等
                    f[i][j] = max + 1;

                else if((a[i] > a[j]) &&(f[i-1][j] > max)) max = f[i-1][j];//在b串中,取一个以小于a【i】的结尾的最大长度
                if(f[i][j] * 2 > ans) ans = f[i][j] * 2;
                for(int k = i + 1; k < j; ++k)//判断是否中间有一个比很大的数
                {
                    if(a[k] > a[j])
                    {
                        if(2 * f[i][j] + 1 > ans)
                            ans = 2 * f[i][j] + 1;
                    }
                }
            }
        }
        printf("%d\n", ans);
    }

    return 0;
}


ArcGIS Pro 2023 保姆级教程:手把手教你将扫描地图变成可编辑的矢量数据 本文详细介绍了使用ArcGIS Pro 2023将扫描地图转换为可编辑矢量数据的完整流程,包括地理配准、智能矢量化、数据质检等关键步骤。特别针对历史地图处理中的典型挑战,提供了实用的解决方案和高级编辑技巧,帮助用户高效完成地图矢量化工作。 阅读详情

相关推荐

如何在Ubuntu 22.04上为AlphaFold3配置NVIDIA A100 GPU(含驱动安装避坑指南)

本文提供了在Ubuntu 22.04系统上为AlphaFold3部署NVIDIA A100 GPU的完整安装教程。内容涵盖从系统环境准备、NVIDIA驱动安装与避坑指南,到Docker容器化部署、数据库获取以及最终构建运行AlphaFold3的详细步骤,旨在帮助研究者和开发者高效配置高性能计算环境,充分发挥A100的硬件潜力。

nft7creator的博客 468

hdu4512(最长上升公共子序列变形)

题意就是找出最长的一个序列满足如下条件:1、整个序列对称;2、前半段序列非递减  想想其实可以将序列倒序存储到另一个数组,然后比较两个数组的最长上升子序列。注意一点 j #include #include #include #include #include #include #include #include using namespace std; typedef long long

ACM之梦 949

VM与欧姆龙PLC通讯设置:Fins TCP/UDP协议实战避坑指南

本文详细解析了VM视觉平台与欧姆龙PLC通过Fins TCP/UDP协议进行通讯的实战配置与避坑要点。文章对比了Fins TCP与Fins UDP的差异,推荐在多数工业控制场景下优先选用Fins TCP以保证可靠性,并深入讲解了网络设置、寄存器地址映射、轮询优化等核心配置步骤。同时,针对常见的多次触发拍照、数据解析错误等问题提供了具体的解决方案和调试技巧,旨在帮助工程师快速建立稳定高效的通讯连接。

e4f5g6h7的博客 596

HDU 4512 最长公共上升子序列

各种序列复习: (1)最长上升子序列。 1、这个问题用动态规划就很好解决了,设dp[i]是以第i个数字结尾的上升子序列的最长长度。那么方程可以是dp[i]=max(dp[j]+1)。(j<i)。复杂度为O(n^2); 2、另外有一个该经典问题的O(nlogn)算法。   首先知道,当求dp[i]时,如果出现a[k]<a[j],而dp[k]=dp[j]时,应当优先选k吧。那么,既...

weixin_30273175的博客 163

XGBoost的简单安装及入门使用

XGBoost安装及简单入门 XGBoost支持多种操作系统,如Windows, Linux, MacOS等,并支持多种语言版本,如Python, R, Scale, Java等。XGBoost的安装方式一般有两种,一种是直接通过pip安装(适合用于Python),另外一种是通过源码编译安装 1、通过pip安装 通过pip安装Python包既简单又方便,只需执行如下的命令: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xgboost 使用

qq_41513230的博客 3万+

Vue3 与 Bpmn-js:打造现代化 BPMN 流程设计器

随着业务流程的复杂化,流程设计器成为企业级应用中不可或缺的一部分。BPMN(Business Process Model and Notation)是一种标准的业务流程建模语言,广泛应用于业务流程管理。本文将介绍如何使用 Vue3 和 Bpmn-js 打造一个现代化的 BPMN 流程设计器。

九天的专栏 2116

TYVJ 1071 LCIS 解题报告

转的题解: 最长公共上升子序列(LCIS)的平方算法预备知识:动态规划的基本思想,LCS,LIS。问题:字符串a,字符串b,求a和b的LCIS(最长公共上升子序列)。首先我们可以看到,这个问题具有相当多的重叠子问题。于是我们想到用DP搞。DP的首要任务是什么?定义状态。1定义状态F[i][j]表示以a串的前i个字符b串的前j个字符且以b[j]为结尾构成的LCIS的长度。为什么是这个而不...

aiechu6301的博客 269

在 Eclipse 里快速用上 SAP Joule:ABAP 开发者的 AI 助手上手指南

本文介绍了SAP Joule for developers如何集成在ABAP开发工具中,为开发者提供AI辅助能力。主要内容包括: Joule作为ADT的增强层,直接嵌入开发流程,支持在项目资源管理器、代码编辑器等场景下通过上下文菜单调用AI功能。 核心使用方式:打开Joule视图后,可在开发对象、代码片段等上下文中使用自然语言交互,请求解释、生成测试或获取示例代码。 重点功能: Explain:解释现有代码逻辑,降低理解成本 ABAP Unit测试生成:快速创建与上下文相关的测试用例 支持在传输管理器等完整

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 394

hdu 4512 吉哥系列故事——完美队形I(最长公共上升序列)

吉哥系列故事——完美队形I Time Limit: 3000/1000 MS (Java/Others)Memory Limit: 65535/32768 K (Java/Others) Total Submission(s): 587Accepted Submission(s): 130 Problem Description   吉哥这...

weixin_30832405的博客 209

黑猫带你学eMMC协议第2篇:eMMC部分相关名词释义

1 前言 1.1 声明 本文依据eMMC JEDEC5.1、网络资料及个人工作经验整理而成,如有错误请留言。 本文结合eMMC JEDEC5.1协议手册查看效果更佳。 1.2 本文背景 本文关键词不包括emmc jedec5.1协议第3章节:《Terms and definitions》内容。关于emmc协议层的关键词,直接查阅spec相关章节即可,清晰明了,此处没必要再列出。 本文为本人工作学习中常听到或常用到关乎于emmc/flash的一些关键词合集,没有固定分类,不需要强行记忆,供查询使用。 1.

黑猫奥利奥的博客 7433

软解调详解

在这个示例中,生成了一个随机的比特序列,将其调制为QPSK信号,添加了高斯白噪声,然后计算了每个比特的LLR,并根据LLR的符号进行了解调判决。软解调是一种基于接收信号的概率估计进行解调的方法。与传统的硬解调相比,软解调不仅考虑了接收信号的幅度和相位信息,还利用统计特性计算每个比特为0或1的概率,从而提高了解调性能。软解调过程中涉及的主要公式包括对数似然比(LLR)的计算公式、信号的概率分布函数以及解调判决公式等。软解调的计算处理流程包括信号接收、预处理、相位估计、LLR计算、解调判决和输出等步骤。

ahah12345678的博客 1226

HDU 4512 最长公共上身子序列(加强)

dp[i][j] 表示a(1,i),b(1,j)取以a[i], b[j]结尾的最大公共上升子串的大小 #include using namespace std; const int N = 205; int dp[N][N]; int a[N]; int main() { int t; cin >> t; while(t--) { int n; cin >> n; for(

vsooda的专栏 1489

uniapp [安卓苹果App端] - 解决支付宝支付报错requestPayment:fail [payment支付宝:62009]未知错误,使用uni.requestPayment支付报错排查方案

uni-app支付宝,uniapp支付宝沙箱支付报错,uni.requestPayment,uniAPP App支付宝支付提示错误requestPayment:fail [payment支付宝:62009]未知错误,UNI-APP支付宝报错"code": -100,uniapp 解决安卓App使用uni.requestPayment实现沙箱环境支付宝支付报错,uniapp安卓app使用支付宝的沙箱环境支付时报了这个错,安卓端app支付宝支付,在沙箱测试环境测支付,提示“商家订单参数异常,请重新发起付款,选择

🏆 前端领域优质创作者 9609

hdu 4512 吉哥系列故事——完美队形I

吉哥系列故事——完美队形ITime Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total Submission(s): 1666 Accepted Submission(s): 482Problem Description  吉哥这几天对队形比较感兴趣。  有一天,有...

weixin_34383618的博客 70

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

hdu4512 LCIS

吉哥系列故事——完美队形I Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) Total Submission(s): 1922    Accepted Submission(s): 575 Problem Description   吉哥这几天对队形比较感

u011455899的专栏 532

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

HDU 4512

最长公共上升子序列。可以看看百度文库上的,比较详细:点击打开链接 对于动归部分其实还没有吃得恨透,改来改去终于AC了。 过段时间一定要回顾一下。 定义状态F[i][j]表示以a串的前i个字符b串的前j个字符且以b[j]为结尾构成的LCIS的长度。 #include #include int main() { int T; int n, a[220]; int

Bearox 编程之路 1155

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

hdu(4512)

题目:http://acm.hdu.edu.cn/showproblem.php?pid=4512 最长公共上升子序列 假设正序为a串,逆序为b串, dp[i]表示以b[i]为结尾的最长公共上升子序列的长度。   #include #include #include using namespace std; const int maxn = 205; int max(int a

Roly 687

hdu 4512 (LCIS)

好久没写解题报告了,最近几周好忙。。。感觉是我进大学以来最忙的一段时间了,要给新生准备下周三比赛的题目,下周五要去南京赛区,回来之后马上就要期中考试了。。。不想挂科 额,很早之前就看过关于LCIS的题目,但是依然理解不了,昨天在网上找了一些资料,我就直接看了那个O(n^2)的解法,有点小懂,但是对于其中的精髓依然陌生,我估计我只是记住了代码。。并不是真正的理解。不过慢慢来,加油!! ...

weixin_34309435的博客 173

hdu 4512 吉哥系列故事——完美队形I(最长公共上升自序加强版)

首先要去学习最长公共上升子序列LCIS,然后是对n*n效率的算法进行优化,这里要注意的是可以求出来的序列中间可以有一个最高的。刚开始将输入的数组进行逆置,写下来发现这可能存在问题。不过具体是什么也没有仔细想明白。 #include<bits/stdc++.h> using namespace std; int dp[300][300],a[300]; in...

weixin_30662011的博客 150

hdu4512

题意为求给定序列中单调递增子序列,且相邻的两个小标之差大于d; 用线段树可解,(单点更新,查询线段)  线段树中的点是存以a【i】结尾的所要求的字串的最大值,动态规划也可解,但自己不明白如何变形,路过大神留下意见; 线段树代码: #include #include #include const int maxn=100110; int tree[4*maxn]; int maxnum(i

Time is up , let's go . 979

2013腾讯编程马拉松初赛第2场(3月22)(HDU 4510 HDU4511 HDU4512 HDU4513 HDU4514)

这次的比赛。。被虐爆了。。做了一个多小时确定下来除了第一题我都做不出来之后。。。我就。。。就。。。。。 第一题:小Q系列故事——为什么时光不能倒流 链接:http://acm.hdu.edu.cn/showproblem.php?pid=4510 题解:水题,格式要注意,还需要注意的是时钟。。。一圈12小时。。不是24小时。。。 #include using namespac

671coder的专栏 1万+

Hdu 4512 吉哥系列故事——完美队形I (LCIS)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4512 思路:数据正反各存一次,求两次的最长公共上升子序列,因为要解决对称的问题,所以比LCIS的通常算法稍有不同。 上个月做腾讯编程马拉松时遇到的题,当时完全没想法 (虽然这次做也调试了好久。。。详见代码),讨论群里有说是合唱队形的,有说是回文串的,于是那时就决定要学一下这部分的知识了。 #in

whyorwhnt的专栏 1297

hdu4512之完美队形

题目大意:         吉哥这几天对队形比较感兴趣。   有一天,有n个人按顺序站在他的面前,他们的身高分别是h[1], h[2] ... h[n],吉哥希望从中挑出一些人,让这些人形成一个新的队形,新的队形若满足以下三点要求,则称之为完美队形:      1、挑出的人保持他们在原队形的相对顺序不变;   2、左右对称,假设有m个人形成新的队形,则第1个人和第m个人身高相同,第2个人和第

追梦的Anker 703

poj Tony’s Tour (插头DP处女作--楼教主男(难)人八题之一)

/* //题目链接:http://poj.org/problem?id=1739 acm记忆:在很久很久以前 ,当插头DP还只是被称作“基于连通性状态压缩动态规划”的时候,楼教主就将其化为男人八题 之列 !引得无数自认为很man的英雄豪杰欲AC之 而后快 !而吾等菜鸟是这学期才听闻 到还有插头DP一说 ,故欲快速刷之以解心中愁!遂捧着cdq(性别 :女)关于基于连通性状态压缩动态规划的

SprintfWater的专栏 4904
上一篇: hnust 1450 Bird tree
下一篇: hdu 4513 吉哥系列故事——完美队形II(拓展KMP算法)
SprintfWater
博客等级 码龄15年 242粉丝 139原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值