Luogu p1241 括号序列
这是一道与dp毫无半点关系的题
本来是去找
的题来着,结果并没有找到,然后看到了这道题。
(本来以为会是很好写的一道题结果因为题意不清直接原地去世了)
思路很简单,基本没有技术含量。
因为数据范围很小,我们可以直接进行暴搜;
定义bool 数组add表示第i个字符所对应的括号有没有被匹配,如果没有匹配需手动补全;
从左往右扫描,如果扫描到']'or')',从当前位置开始向左扫描,寻找配对括号,如果找到,将左右括号的add都置为1,break;
然后这么找大概就可以ac了叭?
#include<cstdio>
#include<cstring>
#include<algorithm>
#define mk make_pair
using namespace std;
char t[110];
bool add[110];
int main(){
scanf("%s",t+1);
int len=strlen(t+1);
for(int i=1;i<=len;i++){
if(t[i]==']'){
for(int j=i-1;j>=1;j--){
if(add[j]==0&&t[j]=='[') {
add[j]=add[i]=1;
break;
}
}
}
if(t[i]==')') {
for(int j=i-1;j>=1;j--) {
if(add[j]==0&&t[j]=='(') {
add[i]=add[j]=1;
break;
}
}
}
}
for(int i=1;i<=len;i++) if(!add[i]){
if(t[i]==')'||t[i]=='(') printf("()");
if(t[i]=='['||t[i]==']') printf("[]");
}else printf("%c",t[i]);
return 0;
}
但是
当我们交上去:

可以说是听取wa声一片了;
为什么呢?!
题面很毒瘤我们看不懂它wr;
现在好像可以意会了但并不能言传因此就假装没看懂叭(自己去悟
像是括号序列([)],在我方程序判断是合法的,而实际上是不合法的,需要补成()[()];
所以我们需要加上:
if(t[j]=='['&&add[j]==0) break;//t[i]==')';
if(t[j]=='('&&add[j]==0) break;//t[i]==']';
来判断被不同的括号横插一刀的情况
然后这样就可以ac了!?
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
char t[110];
bool add[110];
int main(){
scanf("%s",t+1);
int len=strlen(t+1);
for(int i=1;i<=len;i++){
if(t[i]==']'){
for(int j=i-1;j>=1;j--){
if(t[j]=='('&&add[j]==0) break;
if(add[j]==0&&t[j]=='[') {
add[j]=add[i]=1;
break;
}
}
}
if(t[i]==')') {
for(int j=i-1;j>=1;j--) {
if(add[j]==0&&t[j]=='[') break;
if(add[j]==0&&t[j]=='(') {
add[i]=add[j]=1;
break;
}
}
}
}
for(int i=1;i<=len;i++) if(!add[i]){
if(t[i]==')'||t[i]=='(') printf("()");
if(t[i]=='['||t[i]==']') printf("[]");
}else printf("%c",t[i]);
return 0;
}
end-
Luogu p1241 括号序列的更多相关文章
- 洛谷 P1241 括号序列
P1241 括号序列 题目描述 定义如下规则序列(字符串): 1.空序列是规则序列: 2.如果S是规则序列,那么(S)和[S]也是规则序列: 3.如果A和B都是规则序列,那么AB也是规则序列. 例如, ...
- P1241 括号序列
P1241 括号序列 题解 谁解释下标签递推是个什么鬼,应该是暴力 数据比较小直接跑暴力 但是注意题目描述 也就是说: [ ( ] ) 是不合法的 补全应该是 [ ] ( [ ] ) 举个栗子: 比如 ...
- 洛谷 P1241 括号序列(栈)
嗯... 题目链接:https://www.luogu.org/problem/P1241 首先这道题是栈的入门题的加强版, 不仅要你判断这个括号序列是否合法,还要你将这个序列补充完整... 一开始是 ...
- 上午小测3 T1 括号序列 && luogu P5658 [CSP/S 2019 D1T2] 括号树 题解
前 言: 一直很想写这道括号树..毕竟是在去年折磨了我4个小时的题.... 上午小测3 T1 括号序列 前言: 原来这题是个dp啊...这几天出了好几道dp,我都没看出来,我竟然折磨菜. 考试的时候先 ...
- BZOJ4350: 括号序列再战猪猪侠
Description 括号序列与猪猪侠又大战了起来. 众所周知,括号序列是一个只有(和)组成的序列,我们称一个括号 序列S合法,当且仅当: 1.( )是一个合法的括号序列. 2.若A是合法的括号序列 ...
- DP专题——括号序列
毕竟是个渣,写完一遍之后又按LRJ的写了一遍,再写了一遍递归版,最终加上输出解部分 括号序列 定义如下规则序列(字符串): 空序列是规则序列: 如果S是规则序列,那么(S)和[S]也是规则序列: 如果 ...
- 【BZOJ】2209: [Jsoi2011]括号序列(splay)
http://www.lydsy.com/JudgeOnline/problem.php?id=2209 splay又犯逗........upd1那里的sum忘记赋值反............. 本题 ...
- 51nod1476 括号序列的最小代价
这题应该可以用费用流写吧?不过我想不出贪心来TAT.其实还是单调队列乱搞啊T_T //ÍøÉϵÄ̰ÐÄËã·¨ºÃÉñ°¡¡£¡£¡£ÎÒÖ»»áÓÃ×îС·ÑÓÃ×î´óÁ÷ÅÜTAT #in ...
- lintcode: 有效的括号序列
题目: 有效的括号序列 给定一个字符串所表示的括号序列,包含以下字符: '(', ')', '{', '}', '[' and']', 判定是否是有效的括号序列. 样例 括号必须依照 "() ...
随机推荐
- kafka——分布式的消息队列系统
总听公司人说kafka kafka... 所以这玩意到底是个啥? 好像是一个高级版的消息队列,什么高吞吐量,数据持久,消息均衡,emmm https://blog.csdn.net/nawenqian ...
- postman批量调用接口并发测试
本文出自:https://www.cnblogs.com/2186009311CFF/p/11425913.html 接口测试在开发中很容易遇到,下面是请教别人学会的并发测试,希望能帮到需要用到的你, ...
- python深度学习:矩阵转置(transpose)
转置:即行列转换. import numpy as np import matplotlib.pyplot as plt C=np.array([[1,2,3],[4,5,6]]) # Display ...
- 杨辉三角 x
杨辉三角是美丽的数学结晶,其结论往往多蕴含自然之美. ——以下内容均摘抄自题解. 例题: 洛谷P1762 偶数 正如这题所示,数据在n<=10^15的范围内则引导我们去寻找空间更节省,速率更高 ...
- css使用2
一.盒子模型 盒子模型 margin:用来调节盒子与盒子之间的距离(标签与标签之间距离) border:盒子的包装厚度(边框) padding:内部物体与盒子之间距离(文本与边框之间的距离) cont ...
- HDU1254--推箱子(BFS+DFS)
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s) ...
- [BZOJ1902]:[NOIP2004]虫食算(搜索)
题目传送门 题目描述 所谓虫食算,就是原先的算式中有一部分被虫子啃掉了,需要我们根据剩下的数字来判定被啃掉的字母. 来看一个简单的例子: 43#98650#45+8468#6633=444455069 ...
- [LeetCode]-algorithms-Median of Two Sorted Arrays
There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two ...
- Oracle开发:normal ,sysdba,sysoper区别
Oracle将用户分成两类:[system]和[sys] [system]用户只能用normal身份登陆em.(可以看成公司的普通成员) [sys]用户具有“SYSDBA”(可以看成公司的CEO)或者 ...
- 使用NSIS脚本制作一个安装包
大部分人第一次看到NSIS脚本都是一脸懵逼的.因为它这个脚本的结构乍一看上去就非常奇怪,不作说明的话是看不懂的. 编写脚本命令的时候要非常注意,命令要按照规定写在脚本中不同的段落里,也就是说,命令的先 ...