Open lynhao opened 5 years ago
解题(进出栈):
function baseball (arr) {
let result = []
let pre1 = ''
let pre2 = ''
arr.forEach(item => {
switch(item) {
case 'D':
if (result.length > 0) {
pre1 = result.pop()
result.push(pre1, pre1 * 2)
}
break;
case '+':
if (result.length >= 2) {
let pre1 = result.pop()
let pre2 = result.pop()
result.push(pre2, pre1, pre2 + pre1)
}
break;
case 'c':
if (result.length > 0) {
result.pop()
}
break;
default:
result.push(item * 1)
break;
}
})
return result.reduce((curr, value) => curr + value)
}
题目: 你现在是棒球比赛记录员
给定一个字符串列表,每个字符串可以是以下四种类型之一:
每一轮的操作都是永久性的, 可能会对前一轮和后一轮产生影响,你需要返回你在所有回合得分的总和