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++,這樣可以實現每次移位男生只移動一次。

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