题目描述:
682. 棒球比赛 - 力扣(LeetCode) (leetcode-cn.com)
Java代码:
class Solution {
public int calPoints(String[] a) {
int[] t=new int[1000];
int ans=0,ti=-1;
for(int i=0;i<a.length;i++){
char c=a[i].charAt(a[i].length()-1);
if(c=='C')ans-=t[ti--];
else if(c=='D'){
t[++ti]=t[ti-1]*2;
ans+=t[ti];
}else if(c=='+'){
t[++ti]=t[ti-1]+t[ti-2];
ans+=t[ti];
}else{
t[++ti]=Integer.parseInt(a[i]);
ans+=t[ti];
}
}
return ans;
}
}
Java代码二:
class Solution {
public int calPoints(String[] a) {
int[] t=new int[1000];
int ans=0,ti=-1;
for(int i=0;i<a.length;i++){
char c=a[i].charAt(a[i].length()-1);
if(c=='C')ans-=t[ti--];
else{
++ti;
ans+=t[ti]=c=='D'?t[ti-1]*2:(c=='+'?t[ti-1]+t[ti-2]:Integer.parseInt(a[i]));
}
}
return ans;
}
}
|