#include <iostream>
#include <vector>
using namespace std;
int main()
{ ios_base::sync_with_stdio(0);
int n;
cin>>n;
vector<int>kolejka;
int sumy;
for(int i=0; i<n; i++)
{
cin>>sumy;
kolejka.push_back(sumy);
}
int m;
cin>>m;
char znaki[m];
int suma_W = 0;
int suma_P = 0;
for(int i=0; i<m; i++)
{
cin>>znaki[i];
if(znaki[i]=='W')suma_W++;
else suma_P ++;
}
if(suma_W>suma_P) cout<<-1;
else
{
int i = 0;
int licznik = 0;
int wsk = 0;
while(kolejka[0]!=0)
{
int wzor;
if(wsk>=m) wsk=0;
if(znaki[wsk]=='W')kolejka[0]++;
else kolejka[0]--;
wzor=kolejka[0];
vector<int>::iterator it=kolejka.begin();
kolejka.erase(it);
kolejka.push_back(wzor);
licznik++;
wsk++;
}
cout<<licznik-wsk;
}
}
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 52 | #include <iostream> #include <vector> using namespace std; int main() { ios_base::sync_with_stdio(0); int n; cin>>n; vector<int>kolejka; int sumy; for(int i=0; i<n; i++) { cin>>sumy; kolejka.push_back(sumy); } int m; cin>>m; char znaki[m]; int suma_W = 0; int suma_P = 0; for(int i=0; i<m; i++) { cin>>znaki[i]; if(znaki[i]=='W')suma_W++; else suma_P ++; } if(suma_W>suma_P) cout<<-1; else { int i = 0; int licznik = 0; int wsk = 0; while(kolejka[0]!=0) { int wzor; if(wsk>=m) wsk=0; if(znaki[wsk]=='W')kolejka[0]++; else kolejka[0]--; wzor=kolejka[0]; vector<int>::iterator it=kolejka.begin(); kolejka.erase(it); kolejka.push_back(wzor); licznik++; wsk++; } cout<<licznik-wsk; } } |
polski