#include <iostream> #include <cstdio> #include <stdlib.h> #include <stdio.h> #include <string.h> #include <vector> using namespace std; int main(){ int n; scanf("%d", &n); vector<int> money; for(int i = 0; i < n; ++i){ int k; scanf("%d", &k); money.push_back(k); } int m; scanf("%d", &m); char *string = new char[m]; scanf("%s", string); int a = 0; int b = 0; for(unsigned long long result = 1; result < 100000000; ++result){ if(string[a] == 'W'){ money[b] = money[b] + 1; } if(string[a] == 'P'){ money[b] = money[b] - 1; } if(money[b] == 0){ printf("%llu ", result); return 0; } ++a; ++b; if(a == m){ a = 0; } if(b == n){ b = 0; } } a = -1; printf("%d", a); 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 52 53 54 55 56 57 58 59 | #include <iostream> #include <cstdio> #include <stdlib.h> #include <stdio.h> #include <string.h> #include <vector> using namespace std; int main(){ int n; scanf("%d", &n); vector<int> money; for(int i = 0; i < n; ++i){ int k; scanf("%d", &k); money.push_back(k); } int m; scanf("%d", &m); char *string = new char[m]; scanf("%s", string); int a = 0; int b = 0; for(unsigned long long result = 1; result < 100000000; ++result){ if(string[a] == 'W'){ money[b] = money[b] + 1; } if(string[a] == 'P'){ money[b] = money[b] - 1; } if(money[b] == 0){ printf("%llu ", result); return 0; } ++a; ++b; if(a == m){ a = 0; } if(b == n){ b = 0; } } a = -1; printf("%d", a); return 0; } |