#include <iostream>
using namespace std;
#include <array>
int main(){
int n=0;
int pamiecn=0;
cin >> n;
string mr;
cin >> mr;
pamiecn = n;
string sz;
sz = "PL";
int zm = 1;
int wyniki[n];
for (int i = 0;i<n;i++){
wyniki[i]=0;
}
int ucp=0;
int ucz=0;
while(n!=0){
if(mr[0]=='L'){
mr=mr.substr(1,n);
n-=1;
ucp+=1;
}
else if(mr[n-1]=='P'){
mr=mr.substr(0,n-1);
n-=1;
ucz+=1;
}
else{
for(int i=0;i<n-1;i++){
string kaw = mr.substr(i,2);
if(kaw == sz){
wyniki[i+ucp]+=1;
wyniki[i+1+ucp]+=1;
swap(mr[i],mr[i+1]);
}
}
}
}
for (int i = 0 ; i<pamiecn;i++){
cout << wyniki[i]<< ' ';
}
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 49 50 51 | #include <iostream> using namespace std; #include <array> int main(){ int n=0; int pamiecn=0; cin >> n; string mr; cin >> mr; pamiecn = n; string sz; sz = "PL"; int zm = 1; int wyniki[n]; for (int i = 0;i<n;i++){ wyniki[i]=0; } int ucp=0; int ucz=0; while(n!=0){ if(mr[0]=='L'){ mr=mr.substr(1,n); n-=1; ucp+=1; } else if(mr[n-1]=='P'){ mr=mr.substr(0,n-1); n-=1; ucz+=1; } else{ for(int i=0;i<n-1;i++){ string kaw = mr.substr(i,2); if(kaw == sz){ wyniki[i+ucp]+=1; wyniki[i+1+ucp]+=1; swap(mr[i],mr[i+1]); } } } } for (int i = 0 ; i<pamiecn;i++){ cout << wyniki[i]<< ' '; } return 0; } |
English