[R17B]最多連勝
雙指針解決
// [R17B]最多連勝.cpp : 此文件包含 "main" 函數。程序執行將在此處開始并結束。
//
/*
題目地址:
https://bs.daimayuan.top/p/98
題目名稱:
[R17B]最多連勝
題目描述:
有 n 場比賽,已知每場比賽的結果,求其中最多連續勝了多少場。
輸入格式:
第一行包含一個整數 n,表示比賽的數量。
第二行包含一個長度為 n 的僅由 W 和 L 這兩種字符構成的字符串 S,分別表示每場比賽的結果,其中 W 表示勝,L 表示敗。
輸出格式:
輸出一個整數,表示連勝的最多場數。
數據范圍:
對于 50% 的數據,n≤1000。
對于 100% 的數據,1≤n≤10^6。數據保證 S 僅由 W 和 L 這兩種字符構成。
樣例輸入:
14
WLWWWLWWLLWWWW
樣例輸出:
4
樣例輸入:
4
LLLL
樣例輸出:
0
*/
#include <iostream>
#include <cstring>
#include <string>
using namespace std;
int main()
{
int n;
char str[1000010]; memset(str, 0, sizeof(str));
cin >> n >> str;
int l = 0; int r = 0; int ans = 0;
while (l < n && r < n) {
while (l < n && str[l] == 'L') l++;
r = l;
while (r < n && str[r] == 'W') r++;
if (l < n) {
ans = max(ans, r - l);
}
l = r;
}
cout << ans << endl;
return 0;
}
作 者: itdef
歡迎轉帖 請保持文本完整并注明出處
技術博客 http://www.rzrgm.cn/itdef/
B站算法視頻題解
https://space.bilibili.com/18508846
qq 151435887
gitee https://gitee.com/def/
歡迎c c++ 算法愛好者 windows驅動愛好者 服務器程序員溝通交流
如果覺得不錯,歡迎點贊,你的鼓勵就是我的動力
歡迎轉帖 請保持文本完整并注明出處
技術博客 http://www.rzrgm.cn/itdef/
B站算法視頻題解
https://space.bilibili.com/18508846
qq 151435887
gitee https://gitee.com/def/
歡迎c c++ 算法愛好者 windows驅動愛好者 服務器程序員溝通交流
如果覺得不錯,歡迎點贊,你的鼓勵就是我的動力
浙公網安備 33010602011771號