Google算法题:翻转游戏
来源:互联网 发布:灯杆数据基础调研 编辑:程序博客网 时间:2024/05/22 17:54
九章算法:Link
你和你的朋友正在玩一个翻转游戏:给定一个只包含'+'和'-'的字符串,你和你的朋友轮流进行以下操作:翻转两个连续的'+',使得”++”变成”—”。无法进行操作的一方为输。那么给出一个字符串,假设你先进行操作,你是否一定会赢呢?
Example:
s = "-++++-"
返回true,表示你一定会赢。只需翻转第二个和第三个加号使得s = "-+--+-"
此时对方无法继续操作(没有两个连续的加号)。
class Sollution{//searchpublic boolean canWin(String str){int n = str.length();boolean[] ops = new boolean[n];for(int i=0; i<n; i++){ops[i] = (str.charAt(i)=='+');}return search(ops);}boolean search(boolean ops[]){for(int i=0; i<ops.length-1; i++){if(ops[i]&&ops[i+1]){ops[i]=false;ops[i+1]=false;//如果他的下一个人没有选的了,则先手就赢了if(!search(ops))return true;ops[i]=true;ops[i+1]=true;}}return false;}//nim 博弈//TODO}
阅读全文
0 0
- Google算法题:翻转游戏
- 【算法题】数字翻转
- Flip Game翻转游戏
- 翻转棋游戏
- 【搜索】翻转游戏
- 翻转游戏题解
- 2946 翻转游戏
- 算法题——像素翻转
- 游戏 GOOGLE
- 一道google算法题
- Google算法题:轴对称
- 【搜索优化】翻转游戏 flip
- JAVA之翻转棋游戏
- 【高斯消元】 HDOJ 5257 翻转游戏
- 【Leetcode】 Flip Game 翻转游戏
- 51nod 1337 翻转游戏
- 51nod-1337:翻转游戏
- 51nod 1337 翻转游戏
- 地址总线、字长和内存空间的关系
- 关于PCB布线的顺序到底是怎样才合理?
- HDU 6053 TrickGCD(莫比乌斯反演+前缀和)
- 8张图理解Java
- SQL性能优化
- Google算法题:翻转游戏
- iOS跳转QQ聊天应用
- ECMAScript.next: for-of, iterators, generators ecmaScript.next: for-of ,iterators(迭代器),generators(生成
- Hive分析函数和窗口函数
- Python-基础-时间日期处理小结
- Java 主线程和子线程的转换
- VFW音视频采集
- ViewPager相关
- 04、NetCore2.0网页应用程序之Startup源码解析