Google演算法題 翻轉遊戲

2021-08-07 07:43:06 字數 490 閱讀 8900

九章演算法:link

你和你的朋友正在玩乙個翻轉遊戲:給定乙個只包含'+'和'-'的字串,你和你的朋友輪流進行以下操作:翻轉兩個連續的'+',使得」++」變成」—」。無法進行操作的一方為輸。那麼給出乙個字串,假設你先進行操作,你是否一定會贏呢?

example:

s = "-++++-"

返回true,表示你一定會贏。只需翻轉第二個和第三個加號使得

s = "-+--+-"

此時對方無法繼續操作(沒有兩個連續的加號)。

class sollution{

//search

public boolean canwin(string str){

int n = str.length();

boolean ops = new boolean[n];

for(int i=0; i

無盡演算法之 翻轉遊戲

你和朋友玩乙個叫做 翻轉遊戲 的遊戲,遊戲規則 給定乙個只有 和 的字串。你和朋友輪流將 連續 的兩個 反轉成 當一方無法進行有效的翻轉時便意味著遊戲結束,則另一方獲勝。請你寫出乙個函式,來計算出每個有效操作後,字串所有的可能狀態。示例 輸入 s 輸出 注意 如果不存在可能的有效操作,請返回乙個空列...

293 翻轉遊戲

你和朋友玩乙個叫做 翻轉遊戲 的遊戲,遊戲規則 給定乙個只有 和 的字串。你和朋友輪流將 連續 的兩個 反轉成 當一方無法進行有效的翻轉時便意味著遊戲結束,則另一方獲勝。請你寫出乙個函式,來計算出第一次翻轉後,字串所有的可能狀態。示例 輸入 s 輸出 1.字串操作 class solution ve...

294 翻轉遊戲 II

題目描述 你和朋友玩乙個叫做 翻轉遊戲 的遊戲,遊戲規則 給定乙個只有 和 的字串。你和朋友輪流將 連續 的兩個 反轉成 當一方無法進行有效的翻轉時便意味著遊戲結束,則另一方獲勝。請你寫出乙個函式來判定起始玩家是否存在必勝的方案。示例 輸入 s 輸出 true 解析 起始玩家可將中間的 翻轉變為 從...