1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <iostream>
#include <string>
using namespace std;

int main(){

    int n;
    string ants, colls = "";

    cin >> n >> ants;

    int leftAnts = 0;
    for(char a : ants){
        if(a == 'L') leftAnts++;
    }

    int currAnt = 0;
    while(currAnt != n){
        if(ants[currAnt] == 'P') break;
        colls += "0 ";
        leftAnts--;
        currAnt++;
    }

    int rightAnts = 0;
    while(currAnt != n){
        if(ants[currAnt] == 'P'){
            rightAnts++;
            if(rightAnts <= leftAnts){
                colls += to_string(rightAnts * 2 - 1);
            } else {
                colls += to_string(leftAnts * 2);
            }
        } else {
            leftAnts--;
            if(rightAnts <= leftAnts){
                colls += to_string(rightAnts * 2);
            } else {
                colls += to_string(leftAnts * 2 + 1);
            }
        }
        colls += ' ';
        currAnt++;
    }
    cout << colls;

    return 0;
}