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