- 博客(1)
- 资源 (5)
- 收藏
- 关注
原创 【原题】求两个不相交的连续子数组的最大和
题目: 有一个整数数组n,a和b是n里两个互不相交的子数组。返回sum(a)+sum(b)的最大值。 分析: 新建两个数组left和right,left[i]表示n[0:i]的连续子数组的最大和,right[i]表示n[i:length-1]的连续子数组的最大和。left[i]+right[i+1]的最大值就是答案。 int SumOfTwoSubarray(const
2015-08-30 23:50:14 2808
VC++程序: 将字符串转换成公式并计算结果
int Calculate(string formula) 函数功能:输入一个字符串公式string formula,允许四则混合运算,然后输入公式中对应变量的取值,最后返回int类型计算结果。
变量的格式:必须由1位字母加1位数字组成,如a1、b2等。
如输入字符串 “(a1+b2)/(-100)”,以及a1=100,b2=300,得到结果-4。遇到小数则向下取整。
公式的格式:
1、只包含变量、常数、四则符号、小括号四种符号,不支持大括号和中括号
2、允许正数前加正号,如+100
3、不允许空括号,如 “8*( )”
4、允许负数,但负数必须加括号,如 "5/(-1)"。当负数在公式开头时,可不加括号, 如 "-a1+90"和“+a1+90” 都是对的
5、允许纯常数公式,如 “5*(-9)”
6、允许用户输入多余的空格,但空格不能造成公式错误,
如公式 “(1 08+a2)/a 3” 是错的,(- 7)和(- n5)是错的,去掉空格就对了。
2014-10-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人