東東有乙個字串x,該串包含偶數個字元,一半是 s 字元,一半是 t 字元
東東可以對該字串執行 1010000 次操作:如果存在 st 是該串的子串,則刪除掉最左邊的 st。
即 tsttss⇒ttss、sssttt⇒sstt⇒st⇒空
input
(2 ≦ |x| ≦ 200,000)
output
輸出最終串的長度
sample input
tsttss
sample output
4
這裡採用string來進行儲存,遍歷整個字串,用乙個flag記錄前乙個字元是不是s,當遍歷到的字元是t,就erase(i-1,2),再判斷前乙個是否是s記錄到flag裡。直到串尾。
#include
#include
#include
using
namespace std;
string str;
int n;
bool pre;
intmain()
int i =1;
while
(str.
size()
)else
break;}
if(i >= str.
size()
)break;if
(str[i]
=='s'
) i++;if
(i>=str.
size()
)break;}
cout << str.
size()
<< endl;
// system("pause");
}
程式設計思維與實踐 Week10 作業
給定兩個數n nn和m mm,輸出n nn經過若干次乘2或乘3後轉換為m mm的次數 首先判斷m是否能被n整除,如果能夠整除,將m除以n,之後進行迴圈,每次對m除以2或者除以3,直到m 1為止,若某次迴圈m沒有除以2或3,即次數沒有改變,說明無法轉換。include using namespace ...
程式設計思維與實踐 Week10 作業
b lis lcs c 拿數問題 ii 東東在玩遊戲 game23 在一開始他有乙個數字n,他的目標是把它轉換成m,在每一步操作中,他可以將n乘以2或乘以3,他可以進行任意次操作。輸出將n轉換成m的操作次數,如果轉換不了輸出 1。輸入的唯一一行包括兩個整數n和m 1 n m 5 10 8 輸出從n轉...
SDU程式設計思維與實踐作業Week10
1本題直接暴力就可以了 include 321.lis 最長上公升子串行 嚴格遞增 我們只需要記錄0 i的最長上公升子串行就可以了 計算i 1時 若 存在j include using namespace std const int maxn 1e4 long long a maxn b maxn ...