914. 翻转游戏

914. 翻转游戏

中文English

You are playing the following Flip Game with your friend: Given a string that contains only two characters: + and -, you can flip two consecutive "++" into "--", you can only flip one time. Please find all strings that can be obtained after one flip.

Write a program to find all possible states of the string after one valid move.

样例

Example1

Input:  s = "++++"
Output:
[
  "--++",
  "+--+",
  "++--"
]

Example2

Input: s = "---+++-+++-+"
Output:
[
	"---+++-+---+",
	"---+++---+-+",
	"---+---+++-+",
	"-----+-+++-+"
]

输入测试数据 (每行一个参数)如何理解测试数据?

class Solution:
    """
    @param s: the given string
    @return: all the possible states of the string after one valid move
    """
    ‘‘‘
    大致思路:
    1.初始化res = []
    2.依次循环切割两位,如果== ‘++‘的话,那么就进行转换,然后append到res里面,直到循环到最后返回res即可
    ‘‘‘
    def generatePossibleNextMoves(self,s):
        res = []
        for i in range(len(s)-1):
            if s[i:i+2] == ‘++‘:
                res.append(s[:i] + ‘--‘ + s[i+2:])
        return res

原文地址:https://www.cnblogs.com/yunxintryyoubest/p/12571823.html

时间: 2024-10-10 02:27:09

914. 翻转游戏的相关文章

codevs 2946 翻转游戏

2946 翻转游戏 题目描述 Description 现有n个数字a1,a2...an,其值均为0或1. 要求对着n个数中连续的若干个数进行一次取反(0->1,1->0),求所能得到的最多的1的数目. 输入描述 Input Description 第一行,n 第二行,n个数 输出描述 Output Description 能得到的最多的1的数目 样例输入 Sample Input 41 0 0 1 样例输出 Sample Output 4 数据范围及提示 Data Size & Hin

[Swift]LeetCode293. 翻转游戏 $ Flip Game

You are playing the following Flip Game with your friend: Given a string that contains only these two characters: + and -, you and your friend take turns to flip twoconsecutive "++" into "--". The game ends when a person can no longer

翻转游戏

原题链接 解法一:枚举+搜索 #include<bits/stdc++.h> using namespace std; int len; string S; bool search(bool state[]) { for(int i=0;i<len-1;i++){ if(state[i]&&state[i+1]){ state[i]=false; state[i+1]=false; if(!search(state)){ state[i]=true; state[i+1]

[LeetCode] Flip Game 翻转游戏

You are playing the following Flip Game with your friend: Given a string that contains only these two characters: + and -, you and your friend take turns to flip twoconsecutive "++" into "--". The game ends when a person can no longer

Luogu P1764翻转游戏

我代码能力可能有一定的了,要不然不能一遍写出来吧.. 要注意无解的处理! 1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 int a[20][20]; 7 int n,ans = -1,k,cnt0; 8 char ch; 9 10 void print(){ 11 cout << endl; 12 for(int i = 1;i <= n;i++){ 13 for(int

【JavaScript】 2013年度最强AngularJS资源合集

http://www.iteye.com/news/28651-AngularJS-Google-resource AngularJS是Google开源的一款JavaScript MVC框架,弥补了HTML在构建应用方面的不足,其通过使用指令(directives)结构来扩展HTML词汇,使开发者可以使用HTML来声明动态内容,从而使得Web开发和测试工作变得更加容易.  AngularJS诞生以来,吸引了大量的目光,也迅速成为了Web开发领域的新宠.本文整理了2013年度一些非常有价值的Ang

跑吧盒子君

游戏需求: 开始界面点击开始 玩家无限捡去金币 游戏技术实现: 1. 人物并没有移动,障碍物体一直在生成. 如果人物被障碍物拦截到摄像机外部就算游戏结束 2. 人物可以二段跳,但是第一次跳跃之后人物慢慢越落越快,第二次跳跃的高度也会随着第一次落下的速度印象 3. 游戏结束摄像机翻转 游戏速度的合理性: 1. 物体移动的速度 2. 生成的速度 3. 生成物体的距离   盒子男下载地址 http://yunpan.cn/ccyLDmxehxGbQ  访问密码 bb77

最强AngularJS资源合集

AngularJS是Google开源的一款JavaScript MVC框架,弥补了HTML在构建应用方面的不足,其通过使用指令(directives)结构来扩展HTML词汇,使开发者可以使用HTML来声明动态内容,从而使得Web开发和测试工作变得更加容易. AngularJS诞生以来,吸引了大量的目光,也迅速成为了Web开发领域的新宠.本文整理了2013年度一些非常有价值的AngularJS相关教程和资源,如果你想了解AngularJS或正在使用AngularJS,那么这些资源肯定会为你的学习和

AngularJS合集

AngularJS是Google开源的一款JavaScript MVC框架,弥补了HTML在构建应用方面的不足,其通过使用指令(directives)结构来扩展HTML词汇,使开发者可以使用HTML来声明动态内容,从而使得Web开发和测试工作变得更加容易.  AngularJS诞生以来,吸引了大量的目光,也迅速成为了Web开发领域的新宠.本文整理了2013年度一些非常有价值的AngularJS相关教程和资源,如果你想了解AngularJS或正在使用AngularJS,那么这些资源肯定会为你的学习