#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;
}
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; } |
English