目录 A. Make it White B. Following the String C. Choose the Different Ones! D. Find the Different Ones! A. Make it White Problem - A - Codeforces 题意:问在一个只含有'W'和'B'元素的字符串中,选择一个L到R范围,
A.Make it White (模拟) 题意: 给一个字符串 s s s,找出最左边的 B B B和最右边的 B B B,以这两个字母为左右端点的区间包含有多少个字母。 分析: 按照要求,遍历一遍字符串找到左右端点即可。 代码: #include <bits/stdc++.h>using namespace std;void solve() {int n;cin >> n;strin
A. Make it White 找出第一个B和最后一个B的位置。 #include <bits/stdc++.h>//#define int long long#define per(i,j,k) for(int (i)=(j);(i)<=(k);++(i))#define rep(i,j,k) for(int (i)=(j);(i)>=(k);--(i))#define fr fi
链接 Dashboard - Codeforces Round 923 (Div. 3) - Codeforces A. Make it White 题意:给定一个n长的字符串s,s中包含W和B,可以选定一个区间,使得其中所有的B变为W,求让所有B变为W的最小区间 思路:选定最早的B和最晚的B就是这个区间长度了 代码: #include <bits/stdc++.h>#define
Make it White(Problem - A - Codeforces) 题目大意:有一排格子,其中有黑色和白色两种,我们选择一个区间,将区间中的格子全部染成白色,只能选一次,问将这一排格子都染成白色,选择的区间最短为多少。 思路:显然就是从前往后从后往前分别找到第一个'B'的位置。我最开始用的双指针,但是边界什么好像没处理好,直接死循环了,最后直接分开写了两个循环。但是耽误了一会儿,还
Codeforces Round 923 (Div. 3) Codeforces Round 923 (Div. 3) A. Make it White 题意:略 思路:找最小和最大的‘B’下标即可 AC code: void solve() {cin >>n;string s; cin>> s;int mn = INF, mx = 0;for (int i = 0; i < n; i
CF1927A Make it White 代码如下: //朴素版#include<bits/stdc++.h>using namespace std;using ll = long long;const ll N = 200005;#define inf 0x7fffffffvoid solve(){ll n;cin>>n;string a;cin>>a;ll x=-1,y=0