题目描述
素质学校的学生们正在排队,学生们学习到的第一条素质守则就是:“女士优先”。
共有 𝑛n 个人正在排队,为了方便,我们假设初始排队的人就是按照从 11 到 𝑛n 的序列排序。
如果在时间 𝑥x 时,一个男生站在第 𝑖i 个位置,一个女生站在第 (𝑖+1)(i+1) 个位置,那么在时间 𝑥+1x+1 时,第 𝑖i 个位置将有一个女生,第 (𝑖+1)(i+1) 个位置将有一个男生。时间以秒为单位。
例如:初始队列是男女女男女
,经过 11 秒,队列将变成 女男女女男
。
输入描述
第一行包含两个整数 𝑛n 和 𝑡(1≤𝑛,𝑡≤50)t(1≤n,t≤50),表示人数和经过的秒数。
接下来一行包含字符串 𝑠s,表示学生们的初始排列。
注意:为了方便,男生使用B
表示,女生使用G
表示。
输出描述
最终输出经过 𝑡t 秒变化后的序列。
输出为一行字符串,仅包含B
,G
。
输入样例
5 2
BGGBG
输出样例
GGBGB
AC代码
#include<bits/stdc++.h>
using namespace std;
int n,t;
string s;
int main(){
cin>>n>>t>>s;
for(int i=1;i<=t;i++){
for(int j=0;j<n-1;j++){
if(s[j]=='B',s[j+1]=='G'){
swap(s[j],s[j+1]);
j++;
}
}
}
cout<<s;
return 0;
}