leetcode 293.Flip Game(lintcode 914) 、294.Flip Game II(lintcode 913)
914. Flip Game
https://www.cnblogs.com/grandyang/p/5224896.html
从前到后遍历,遇到连续两个'+',就将两个加号变成'-'组成新的字符串加入到结果中。
class Solution { public:vector<string> generatePossibleNextMoves(string &s) {// write your code herevector<string> result; for(int i = 1;i < s.size();i++){if(s[i] == '+' && s[i-1] == '+')result.push_back(s.substr(0,i-1) + "--" + s.substr(i+1,s.size() - i - 1));}return result;} };
913. Flip Game II
这个题是看先手变换的是否会赢。
方法与Flip Game类似,遍历字符串,然后递归找下一个是否是能修改,将修改后的字符串传入到递归的结果中。
https://www.cnblogs.com/grandyang/p/5226206.html
下面这个应该是leetcode上的格式,没有使用引用,这个代码直接贴到lintcode上会报错。
class Solution { public:bool canWin(string s) {for (int i = 1; i < s.size(); ++i) {if (s[i] == '+' && s[i - 1] == '+' && !canWin(s.substr(0, i - 1) + "--" + s.substr(i + 1))) {return true;}}return false;} };
修改后lintcode上的代码。
class Solution { public:/*** @param s: the given string* @return: if the starting player can guarantee a win*/bool canWin(string &s) {// write your code herefor(int i = 1;i < s.size();i++){if(s[i] == '+' && s[i-1] == '+'){string tmp = s.substr(0,i-1) + "--" + s.substr(i+1);if(!canWin(tmp))return true;}}return false;} };
转载于:https://www.cnblogs.com/ymjyqsx/p/10841419.html
leetcode 293.Flip Game(lintcode 914) 、294.Flip Game II(lintcode 913)相关推荐
- _28LeetCode代码随想录算法训练营第二十八天-贪心算法 | 122.买卖股票的最佳时机II 、55.跳跃游戏、45.跳跃游戏II
_28LeetCode代码随想录算法训练营第二十八天-贪心算法 | 122.买卖股票的最佳时机II .55.跳跃游戏.45.跳跃游戏II 题目列表 122.买卖股票的最佳时机II 55.跳跃游戏 45 ...
- 【LeetCode】【HOT】240. 搜索二维矩阵 II(抽象二叉搜索树)
[LeetCode][HOT]240. 搜索二维矩阵 II 文章目录 [LeetCode][HOT]240. 搜索二维矩阵 II package hot;public class Solution24 ...
- 代码随想录训练营第二天|LeetCode977.有序数组的平方、209.长度最小的子数组、59.螺旋矩阵II
day2 | LeetCode977.有序数组的平方.209.长度最小的子数组.59.螺旋矩阵II 创建时间: October 13, 2022 3:29 PM 一.今日任务 977.有序数组的平方 ...
- 293/294 Flip Game I and II -- back tracking ing
293. 一个input 只有 + 或者-, 每次只能把 "连续2个"+ 变成- 号,下一轮换另一个人做同样操作,如果不存在连续的+,则这个人就失败了.Input: s = &qu ...
- LeetCode 293. Flip Game
原题链接在这里:https://leetcode.com/problems/flip-game/description/ 题目: You are playing the following Flip ...
- LeetCode 381. O(1) 时间插入、删除和获取随机元素 - 允许重复(vector + 哈希)
文章目录 1. 题目 2. 解题 1. 题目 设计一个支持在平均 时间复杂度 O(1) 下, 执行以下操作的数据结构. 注意: 允许出现重复元素. insert(val):向集合中插入元素 val. ...
- LeetCode 294. 翻转游戏 II(记忆化递归)
文章目录 1. 题目 2. 解题 1. 题目 你和朋友玩一个叫做「翻转游戏」的游戏, 游戏规则:给定一个只有 + 和 - 的字符串. 你和朋友轮流将 连续 的两个 "++" 反转成 ...
- LeetCode 293. 翻转游戏
文章目录 1. 题目 2. 解题 1. 题目 你和朋友玩一个叫做「翻转游戏」的游戏,游戏规则:给定一个只有 + 和 - 的字符串. 你和朋友轮流将 连续 的两个 "++" 反转成 ...
- LeetCode 第 20 场双周赛(294 / 1541,前19.07%,第1次全部通过)
文章目录 1. 比赛结果 2. 题目 LeetCode 5323. 根据数字二进制下 1 的数目排序 easy LeetCode 5324. 每隔 n 个顾客打折 medium LeetCode 53 ...
最新文章
- 【FFmpeg】ffmpeg命令详解(一)
- java log4j 配置_Java:log4j与log4j.properties的配置说明
- PMON和SMON的功能
- java健康检查的作用,spring cloud分布式健康检查
- 给android应用程序系统的签名
- 【优化调度】基于matlab蚁群算法求解无等待流水线调度优化问题【含Matlab源码 1516期】
- TRNSYS与CONTAM3.4耦合过程
- uniapp引入腾讯防水墙
- Java mail outlook发邮件提示升级TLS1.2
- 查找对方IP地址技巧五招
- 蓝桥杯(Java) 回文日期
- 主流射频半导体材料及特性介绍
- Java获取ejabberd在线用户账号Jid
- 运维工程师是桥的护栏_海沧大桥护栏救过不少车 揭秘护栏是如何养护的
- 2013年网站内容建设新趋势
- L1-7 矩阵列平移
- 360路由器更新网络
- 月销售额224万美金的Shopify独立站卖家实操详解
- Silverlight实用窍门系列:14.Visifire图表控件的使用一(图表的创建和基础使用)【附带源码实例】...
- CQOI2016省选游记