LeetCode——682. 棒球比赛
题目描述:
class Solution {public:int calPoints(vector<string>& ops) {stack<int>s;int n;int a,b,c;int sum=0;for(int i=0;i<ops.size();i++){if(ops[i]=="C"){s.pop(); }else if(ops[i]=="D"){s.push(s.top()*2);}else if(ops[i]=="+"){a=s.top();s.pop();b=s.top();s.pop();c=a+b;s.push(b);s.push(a);s.push(c);}else{s.push(stoi(ops[i]));//stoi()是将字符转化为数字}}while(!s.empty()){sum+=s.top();s.pop();}return sum;}
};
class Solution {public int calPoints(String[] ops) {Stack<Integer> s=new Stack<>();for(String op:ops){if(op.equals("+")){int a=s.pop();int b=s.peek();s.push(a);s.push(a+b);}else if(op.equals("D")){s.push(2*s.peek());}else if(op.equals("C")){ s.pop();}else{s.push(Integer.parseInt(op));}}int sum=0;for(int i=0;i<s.size();i++){sum+=s.get(i);}return sum;}
}
import java.util.Stack;public class Solution {public static void main(String[] args) {String[] ops = {"5", "2", "C", "D", "+"};System.out.println(calPoints(ops));}public static int calPoints(String[] ops) {Stack<Integer> s = new Stack<>();for (String op : ops) {switch (op) {case "+" -> {int a = s.pop();int b = s.peek();s.push(a);s.push(a + b);}case "D" -> s.push(2 * s.peek());case "C" -> s.pop();default -> s.push(Integer.parseInt(op));}}int sum = 0;for (Integer integer : s) {sum += integer;}return sum;}
}
LeetCode——682. 棒球比赛相关推荐
- [LeetCode]682. 棒球比赛(Baseball Game)Java
一.题目: LeetCode地址 你现在是棒球比赛记录员. 给定一个字符串列表,每个字符串可以是以下四种类型之一: 1.整数(一轮的得分):直接表示您在本轮中获得的积分数. 2. "+&qu ...
- leetcode 682. 棒球比赛(Baseball Game)
目录 题目描述: 示例 1: 示例 2: 解法: 题目描述: 你现在是棒球比赛记录员. 给定一个字符串列表,每个字符串可以是以下四种类型之一: 整数(一轮的得分):直接表示您在本轮中获得的积分数. & ...
- LeetCode 682 棒球比赛
你现在是棒球比赛记录员. 给定一个字符串列表,每个字符串可以是以下四种类型之一: 1.整数(一轮的得分):直接表示您在本轮中获得的积分数. 2. "+"(一轮的得分):表示本轮获得 ...
- Leetcode 682. 棒球比赛 解题思路及C++实现
解题思路: 这道题比较简单,就是直接用一个stack,依次处理输入容器中的每一个字符串,要注意的是:将string转为int,C++中函数为stoi(): class Solution { publi ...
- LeetCode:棒球比赛【682】
LeetCode:棒球比赛[682] 题目描述 你现在是棒球比赛记录员. 给定一个字符串列表,每个字符串可以是以下四种类型之一: 1.整数(一轮的得分):直接表示您在本轮中获得的积分数. 2. &qu ...
- vector 力扣 682 棒球比赛
682 棒球比赛 你现在是棒球比赛记录员. 给定一个字符串列表,每个字符串可以是以下四种类型之一: 1.整数(一轮的得分):直接表示您在本轮中获得的积分数. 2. "+"(一轮的得 ...
- 《LeetCode刷题》682. 棒球比赛(java篇)
题目描述: 你现在是一场采用特殊赛制棒球比赛的记录员.这场比赛由若干回合组成,过去几回合的得分可能会影响以后几回合的得分. 比赛开始时,记录是空白的.你会得到一个记录操作的字符串列表 ops,其中 o ...
- [LeetCode javaScript] 682. 棒球比赛
你现在是棒球比赛记录员. 给定一个字符串列表,每个字符串可以是以下四种类型之一: 1.整数(一轮的得分):直接表示您在本轮中获得的积分数. 2. "+"(一轮的得分):表示本轮获得 ...
- Leetcoode 682. 棒球比赛
你现在是一场采用特殊赛制棒球比赛的记录员.这场比赛由若干回合组成,过去几回合的得分可能会影响以后几回合的得分. 比赛开始时,记录是空白的.你会得到一个记录操作的字符串列表 ops,其中 ops[i] ...
最新文章
- Python,OpenCV提取图片中的多个茄子种子轮廓,并按从左到右排序后显示
- log4j在eclipse上使用简介
- JSP+Servlet + JDBC 实现简单的登录验证模块
- UGUI 事件穿透规则
- ibatis多参数的问题
- 文件锁操作《精通Unix下C语言编程与项目实践》之三
- matlab怎让3d旋转,如何在MATLAB中平滑旋转3D绘图?
- python中方法调用方法_Python中实现结构相似的函数调用方法
- 矩池云上matplotlib显示中文乱码
- Mutt email 程序使用入门 作者:王垠
- MySql update inner join!MySql跨表更新 多表update sql语句?如何将select出来的部分数据update到另一个表里面?...
- PCWorld评出的2010年世界杀毒软件排名
- QuickEdit-手机端强大的代码编辑器
- 直播行业市场分析:2022年构建多元化的直播生态体系
- 阿里云ECS云服务器Linux Tomcat启动慢 访问网页转圈
- ROS中usb摄像头的使用_(usb_cam)
- memcpy和memset使用时需要区分的注意点
- 学python能赚钱吗-利用python能怎么挣钱
- Vulnhub靶机:VEGETA_ 1
- 淘宝API 商品优惠券