这题被归类为栈,所以用栈来做咯;
总体思想还是括号匹配,不过关键在于如何求出相互匹配的两人中夹杂着多少个男生,我的方法是定义结构体记录每个人左边男生的个数
#include
#include
#define maxn 1500+5
using namespace std;
struct stu
{
int a,sex;//a位,该人(无论男女)左边男生的个数,sex为该人的性别;
};
s...
分类:
其他好文 时间:
2015-04-29 13:34:40
阅读次数:
168
经典的动态规划题这道题感觉确实有一定难度,感觉自己的dp学的弱爆了!以后还要努力啊!括号匹配(二)时间限制:1000ms|内存限制:65535KB难度:6描述给你一个字符串,里面只包含"(",")","[","]"四种符号,请问你需要至少添加多少个括号才能使这些括号匹配起来。如:[]是匹配..
分类:
其他好文 时间:
2015-04-29 11:55:21
阅读次数:
135
括号匹配(二)描述给你一个字符串,里面只包含"(",")","[","]"四种符号,请问你需要至少添加多少个括号才能使这些括号匹配起来。如:[]是匹配的([])[]是匹配的((]是不匹配的([)]是不匹配的输入第一行输入一个正整数N,表示测试数据组数(N 2 #include 3 int main(...
分类:
其他好文 时间:
2015-04-25 13:25:50
阅读次数:
103
如果没有任何输入,那么直接输出No#include
#include
#include
using namespace std;
int main()
{
char ch;
int fact;
scanf("%c",&ch);
if(ch=='\n')
{
printf("No\n");
return 0;
}
fact=0;
stacks;
w...
分类:
其他好文 时间:
2015-04-25 10:47:20
阅读次数:
123
#include#include#define MaxSize 100void ExpIsCorrect(char exp[],int n);typedef char DataType;typedef struct{ DataType stack[MaxSize]; int top;}S...
分类:
其他好文 时间:
2015-04-18 23:43:59
阅读次数:
148
学校数据结构课程实验之一。用到的数据结构:栈基本功能:输入中缀的运算表达式(即运算符在操作数中间,符合日常的书写习惯),将其转为逆波兰表达式(后缀表达式,适于机器运算);对输入的表达式进行括号匹配检查,若不符合规则,报错;对于符合规则的表达式,计算结果并输出;过滤输入的非法字符(字母)。概要设计:主...
分类:
其他好文 时间:
2015-04-09 10:14:05
阅读次数:
277
括号的匹配括号的匹配问题简单的分析一下可以用的括号可以分为以下几种"()""[]""{}"""匹配过程中又以下四种情况左右括号乱序左括号比右括号多右括号比左括号多匹配算法思路定义一个栈,根据栈后进先出的特性进行括号匹配依次读入一个字符当这个字符是左括号时,将其压入栈顶重复第二步,如果字符时右括号将栈...
分类:
其他好文 时间:
2015-04-03 21:01:00
阅读次数:
141
引例一:2n个人排队买票,其中n个人持50元,n个人持100元。每张票50元,且一人只买一张票。初始时售票处没有零钱找零。请问这2n个人一共有多少种排队顺序,不至于使售票处找不开钱?引例二:括号匹配,n个左括号,n个右括号,求合法组合数目。引例三:1表示进栈,0表示出栈。n个0,n个1的合法排列。引...
分类:
其他好文 时间:
2015-03-29 00:37:12
阅读次数:
188
1. 括号匹配的四种可能性:
①左右括号配对次序不正确
②右括号多于左括号
③左括号多于右括号
④左右括号匹配正确
2. 算法思想:
1.顺序扫描算数表达式(表现为一个字符串),当遇到三种类型的左括号时候让该括号进栈;
2.当扫描到某一种类型的右括号时,比较当前栈顶元素是否与之匹配,若匹配,退栈继续判断;
3.若当前栈顶元素与当前扫描的括号不匹配,则左右括号配对次序不正确,匹配...
分类:
其他好文 时间:
2015-03-18 16:00:36
阅读次数:
197