1.17A补好思路

#include<iostream>
#include<string>
using namespace std;
int main()
{
    int num, t;
    cin >> num >> t;
    string a;
    a = "/n";//此处是为了将cin输入删除,使getline可以获得一个字符串;
    getline(cin, a); getline(cin, a);
    for (int i = 0; i < t; i++)
    {
        for (int j = 0; j < num - 1; j++)
        {
            if (a[j] == 'B'&& a[j + 1] == 'G')
            {
                a[j] = 'G'; a[j + 1] = 'B';
                j++;
            }
        }
    }
    cout << a;
    return 0;
}

思路:运用第一个for循环实现要进行次数,第二个for循环是判断并交换男生女生的位置,如果男生在前女生在后就交换,j++后如果前面已经交换好一次,还会进行一次j++,这样可以实现每次移位男生只移动一次。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章