棒球比赛



export default (arr) => {
  let result = []
  // 上一轮数据
  let pre1
  // 上上一轮数据
  let pre2
  // 对数组进行遍历处理得分
  arr.forEach(item => {
    switch (item) {
      case 'C':
        if (result.length) {
          result.pop()
        }
        break
      case 'D':
        pre1 = result.pop()
        result.push(pre1, pre1 * 2)
        break
      case '+':
        pre1 = result.pop()
        pre2 = result.pop()
        result.push(pre2, pre1, pre2 + pre1)
        break
      default:
        result.push(item * 1)
    }
  })
  return result.reduce((total, num) => {
    return total + num
  })
}

posted @ 2020-08-10 20:21  额头有王的喵  阅读(130)  评论(0编辑  收藏  举报