POJ1141 动态规划

【数据集5】土地利用类型数量预测数据LUH2 简介土地利用类型数量预测数据LUH2 阅读详情

动态规划简单题 唉 ~~ 错了很多次啊

注意看discuss 不然很难ac

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;

const int maxn=108;
const int inf=1<<30;
char str[maxn];
int dp[maxn][maxn];
int add[maxn][maxn];

void output(int b,int e)
{
	if(b==e)
	{
		if(str[b]=='['||str[b]==']')
		{
			printf("[]");
		}
		else
		{
			printf("()");
		}
	}
	else
	{
		if(add[b][e]==-1)
		{
			putchar(str[b]);
			if(b+1!=e)
				output(b+1,e-1);
			putchar(str[e]);
		}
		else
		{
			output(b,add[b][e]);
			output(add[b][e]+1,e);
		}
	}
}

int main()
{
	while(gets(str+1))
	{
		memset(dp,0,sizeof(dp));
		memset(add,0,sizeof(add));
		int i,j,k,p,len=strlen(str+1);
		if(len==0)
		{
			printf("\n");
			continue ;
		}
		for(i=1;i<=len;i++)
		{
			dp[i][i]=1;
		}
		for(p=1;p<len;p++)
		{
			for(i=1;i+p<=len;i++)
			{
				j=i+p;
				dp[i][j]=inf;
				if(str[i]=='('&&str[j]==')' || str[i]=='['&&str[j]==']')
				{
					dp[i][j]=min(dp[i][j],dp[i+1][j-1]);
					add[i][j]=-1;
				}
				for(k=i;k<j;k++)
				{
					if(dp[i][j]>dp[i][k]+dp[k+1][j])
					{
						dp[i][j]=dp[i][k]+dp[k+1][j];
						add[i][j]=k;
					}
				}
			}
		}
		output(1,len);
		putchar(10);
	}
	return 0;
}



NTscan扫描工具 ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。 立即下载

相关推荐

当GO.db安装失败时,生物信息学新手应该知道的5个底层逻辑

本文为生物信息学新手提供了解决GO.db安装失败的5个关键底层逻辑,包括网络连接与镜像源设置、版本兼容性检查、依赖关系管理、SQLite存储机制理解以及调试技巧。特别针对Bioconductor的GO.db包安装问题,详细介绍了如何通过切换国内镜像、管理版本冲突和解决依赖问题来成功安装,帮助用户高效克服常见安装障碍。

weixin_29062823的博客 409

动态规划 POJ1141 Brackets Sequence 解题报告

原题链接:http://poj.org/problem?id=1141 Description Let us define a regular brackets sequence in the following way: 1. Empty sequence is a regular sequence. 2. If S is a regular sequence, then (S) an...

weixin_30548917的博客 139

【Unity】入门教程第一期-下载安装Unity编辑器(下)

讲解如何在Unity Hub中下载Unity编辑器以及IED环境

Xiaoxin的博客 2042

动态规划 Brackets Sequence poj 1141

题目连接:http://poj.org/problem?id=1141 题目大意:给出一串括号序列(只包含小括号和中括号),求包含次子序列的长度最小的regular brackets sequence。其中regular brackets sequence定义如下: 1.空序

凌风 2921

FairyGUI深度解析:Unity复杂UI开发的高效解决方案与性能优化

在Unity游戏和应用开发中,UI系统的性能与开发效率是核心挑战。原生UGUI的组件化模型在应对复杂、动态界面时,常面临Draw Call过高、层级管理臃肿的问题。其原理在于,每个UI元素对应一个GameObject,渲染合批受限于Transform层级与材质状态,易导致性能瓶颈。FairyGUI(FGUI)作为一种专业的第三方UI解决方案,其技术价值在于采用了截然不同的“舞台-显示对象”渲染模型。该模型通过内部轻量级对象管理与自主合批系统,实现了极高的运行时效率与Draw Call优化。在应用场景上,FG

weixin_31315567的博客 347

QT项目实战:如何在正点原子Linux开发板上集成CVR-100UC身份证阅读器(附完整代码)

本文详细介绍了在正点原子Linux开发板上集成CVR-100UC身份证阅读器的完整实战流程。内容涵盖驱动适配、库文件部署、QT项目框架搭建、核心功能封装以及界面集成,并提供了完整的代码示例,帮助开发者快速实现嵌入式环境下的身份证信息读取功能。

yyy34的博客 259

poj1141 动态规划

题意:定义了regular brackets sequence,即满足以下条件: 1、空串是regular brackets sequence 2、如果S是regular brackets sequence,则[S]和(S)也是regular brackets sequence 3、如果A、B都是regular brackets sequence,则AB也是regular bracket

perfectjob的专栏 413

Windows Docker Desktop部署MaxKB详细教程

MaxKB(Max Knowledge Base)是一款基于大语言模型(LLM)和检索增强生成(RAG)技术的开源知识库问答系统,旨在帮助企业、教育机构及研究组织高效管理知识并提供智能问答服务。

猿小白的博客 1376

[poj] 动态规划 1141

dp练习的第三道题,依然花了我断断续续好几个小时……有人说看到题目里的:2. If S is a regular sequence, then (S) and [S] are both regular sequences. 3. If A and B are regular sequences, then AB is a regular sequence. 就知道用dp,看来我还是经验太少了跟上一词做的题目有点像,都是用一个二维数组保存状态,另一个保存路径。保存路径的那个我想了好一阵怎么来存,结果最后还是看

Height'>0 492

Python爬虫实战:逆向解析腾讯视频API,高效获取结构化视频信息

首先,我们定义期望获取的数据结构,这有助于数据验证和代码清晰度。python"""腾讯视频信息数据模型"""title: str = Field(..., description="视频标题")vid: str = Field(..., description="视频唯一ID")play_count: Optional[int] = Field(None, description="播放量")

2201_76125261的博客 2380

微信小程序 - 解决报错 {“errcode“:41002,“errmsg“:“appid missing, rid: X“} 微信报错错误码errcode“:41002问题分析及解决教程(详细排查)

【微信小程序】报错{“errcode“:41002,“errmsg“:“appid missing, rid: 64e55770-67c1fb7e-027c5a70“}:【微信小程序】微信小程序登录请求出现appid missing提示,微信公众号{"errcode":41002,"errmsg":"appid missing"},微信 报错{“errcode“:41002,“errmsg“:“appid missing,微信小程序获取openid返回appid missing的问题,微信小程序提示Erro

🏆 前端领域优质创作者 5663

POJ 1141 Brackets Sequence(动态规划)

题目大意 给你一个括号串(包括'(',')','[',']'),长度不超过 100,问你怎么添加最少的括号,使得这个括号串是合法的,输出添加括号后的合法括号串 做法分析 以长度划分阶段,定义状态:f[i][j] 表示,s(i)~s(j) 这一个字串需要添加多少括号使得其变为合法字串,状态转移: f[i][j]=min{ f[i][k]+f[k+1][j...

weixin_30326741的博客 136

ANSYS——模态分析的理论基础

ANSYS模态分析理论基础

python_AI_fans的博客 9102

【POJ 1141 括号序列】 区间dp

POJ 1141 题意 就是空串是合法的 S为合法串 (S)合法 [S]合法 问你最少添加几个字符串使得输入的串为合法串并输出合法串 我们用区间dp搞一下 dp[l][r]代表从 l 到 r 需要加几个串 然后统计出答案用 dfs 跑一下序列 输出答案 /* if you can't see the repay Why not just work step by step ...

我是谁 --- 卡比兽 313

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

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

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

POJ 1141 Brackets Sequence(动态规划 / 递归)

Brackets Sequence (POJ 1141) Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 33360 Accepted: 9662 Special Judge Description Let us define a regular brackets sequence in...

爱玲姐姐的博客 862

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

动态规划入门(三)DP 基本思想 具体实现 经典题目 POJ1159 POJ1458 POJ1141

动态规划入门(三)DP 基本思想 具体实现 经典题目 POJ1159 POJ1458 POJ1141 POJ1159,动态规划经典题目,很适合初学者入门练手。 求:为了使字符串左右对称,应该插入的最小字符数目。 设字符串为S1 S2 S3 … Sn. 这个字符串有n个字符,根据D

sj13051180的专栏 3011

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

POJ 1141 Brackets Sequence

POJ  1141;链接:http://poj.org/problem?id=1141 题目: Brackets Sequence Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 23638   Accepted: 6665   Special Judge

u010084308的专栏 1189

poj 1141

这个题目让我蛋疼了一晚上,最后对比别人的代码,才发现问题:居然使用while ( scanf("%s", str) != EOF ) 导致WA!这不科学呀! //poj_1141 #include using namespace std; #define INF 10000 char str[110], result[210]; int dp[110][110], pos[110][1

水人的专栏 842

POJ 1141 Brackets Sequence 动态规划

在刘汝佳黑书上有详细的解析,自己明天这两种算法自己实现一下,作为对动态规划的深入理解学习先转一个题解http://blog.163.com/leyni@126/blog/static/16223010220103155534476/?fromdm&fromSearch&isFromSearchEngine=yes问题:括号匹配问题。给出一个由括号组成字符串,加最少的括号使之匹配。思路:设f[i][j]为从i到j这段字串达到匹配所需最少括号数。初始状态:f[i][i] = 1;状态转移:f[i][j] = m

Coding for Dreams 2127

动态规划 Brackets Sequence poj 1141

题目连接:http://poj.org/problem?id=1141 题目大意:给出一串括号序列(只包含小括号和中括号),求包含次子序列的长度最小的regular brackets sequence。其中regular brackets sequence定义如下: 1.空序列是一个regular brackets sequence; 2.如果s是一个regular bracke

lavendarWang的专栏 844

POJ1141 动态规划,空间优化

本来一个括号匹配的题目,在学习完数据结构的栈之后,我以为自己无敌了,直接一个栈上去 Time Limit Exceeded .......... 当时我稍微想了下为啥,没想出来,趁现在写博客的时候再想想看, ............ 还是想不出来 后来发现,我学的那个栈的方法好像只能用来检测括号序列是否匹配,但是无法做到最小匹配.... 然后发现POJ上还有一个题目2

Peter的脱发日记 466

POJ 1141

POJ 1141 给出一段括号,要求插入最少的括号使其合法,坑爹啊,有空串的,错了一晚上。 设dp[ i ][ j ]为以i为开始j为结束成为合法段所增加的括号数最小。 然后dp[ i ][ j ]=min( dp[ i ][ k ]+dp[ k+1 ][ j ])    //i 类似矩阵连乘,记录新增括号比较麻烦,弄了很久才弄出来。 #include #include #include

rssj_chlh的专栏 408

poj 1141 动态规划

题意: 黑书P113 括号配对 1 空序列是规则序列 2 如果S是规则序列,则(S)或[S]是规则序列 3 如果A和B是规则序列,则AB是规则序列 给定序列,要求尽可能少的添加括号使其成为规则序列,输出规则序列。 分析:设dp[i][j]为S[i~j]最少需要增加的括号数, dp[i, j] = ( dp[i+1, j-1], dp[i, k] + dp[k+1, j] ) ...

weixin_30446613的博客 94

【原】 POJ 1141 Brackets Sequence 动态规划 解题报告

http://poj.org/problem?id=1141 方法: 对角线方向求解DP。 设c[i][j]表示原串str[i...j]补齐后的最短长度。a[i][j]表示原串str[i...j]补齐后的字符串。 c[1][n]和a[1][n]即为所求结果。n为原串的长度。 初始状态: c[i][i] = 2 a[i][i] = "(...

ajiaxi111111的博客 195

POJ1141 Brackets Sequence (dp动态规划,递归)

本文出自:http://blog.youkuaiyun.com/svitter 原题:http://poj.org/problem?id=1141 题意:输出添加括号最少,并且使其匹配的串。 题解: dp [ i ] [ j ] 表示添加括号的个数, pos[ i][ j ] 表示i, j中哪个位置分开,使得两部分分别匹配。 初始值置dp [ i ] [ i ]  = 1; 如果只有一个括号,

svitter的专栏 4670
上一篇: POJ动态规划题目列表
下一篇: POJ 1191
MakingMaker
博客等级 码龄15年 6粉丝 108原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值