寒假每日一題題解 1 18 翻硬幣

2021-10-17 14:35:19 字數 832 閱讀 4607

小明正在玩乙個「翻硬幣」的遊戲。

桌上放著排成一排的若干硬幣。我們用 * 表示正面,用 o 表示反面(是小寫字母,不是零)。

比如,可能情形是:**oo***oooo

如果同時翻轉左邊的兩個硬幣,則變為:oooo***oooo

現在小明的問題是:如果已知了初始狀態和要達到的目標狀態,每次只能同時翻轉相鄰的兩個硬幣,那麼對特定的局面,最少要翻動多少次呢?

我們約定:把翻動相鄰的兩個硬幣叫做一步操作。

輸入格式

兩行等長的字串,分別表示初始狀態和要達到的目標狀態。

輸出格式

乙個整數,表示最小操作步數

資料範圍

輸入字串的長度均不超過100。

資料保證答案一定有解。

輸入樣例1:

**********

o****o****

輸出樣例1:
5
輸入樣例2:
*o**o***o***

*o***o**o***

輸出樣例2:
1
#include

#include

using namespace std;

string s1,s2;

char str[2]

=;intget_index

(char c)

intmain()

} cout << cnt;

return0;

}

水題,沒啥好說的,分析一下就ok了。

每日一題 翻硬幣

翻硬幣 小明正在玩乙個 翻硬幣 的遊戲。桌上放著排成一排的若干硬幣。我們用 表示正面,用o表示反面 是小寫字母,不是零 比如,可能情形是 oo oooo 如果同時翻轉左邊的兩個硬幣,則變為 oooo oooo 現在小明的問題是 如果已知了初始狀態和要達到的目標狀態,每次只能同時翻轉相鄰的兩個硬幣,那...

AcWing寒假每日一題 Day10翻硬幣

小明正在玩乙個 翻硬幣 的遊戲。桌上放著排成一排的若干硬幣。我們用 表示正面,用o表示反面 是小寫字母,不是零 比如,可能情形是 oo oooo 如果同時翻轉左邊的兩個硬幣,則變為 oooo oooo 現在小明的問題是 如果已知了初始狀態和要達到的目標狀態,每次只能同時翻轉相鄰的兩個硬幣,那麼對特定...

AcWing寒假每日一題 Day10翻硬幣

小明正在玩乙個 翻硬幣 的遊戲。桌上放著排成一排的若干硬幣。我們用 表示正面,用 o 表示反面 是小寫字母,不是零 比如,可能情形是 o o oooo oo oooo oo ooo o。如果同時翻轉左邊的兩個硬幣,則變為 ooo o oooo oooo oooo oooo ooo o。現在小明的問題...