rt
#include<bits/stdc++.h>
using namespace std;
int a[5005], ans = 0, sum;
int y, m1, d1, h1, M1;
int y2, m2, d2, h2, M2;
void times() {
for (int j = 1; j <= y2; j ++) {
for (int i = 1; i <= 12; i ++) {
switch (i) {
case 1: {
sum += 31 * 24 * 60;
break;
}
case 2: {
if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0) {
sum += 29 * 24 * 60;
} else {
sum += 28 * 24 * 60;
}
}
case 3: {
sum += 31 * 24 * 60;
break;
}
case 4: {
sum += 30 * 24 * 60;
break;
}
case 5: {
sum += 31 * 24 * 60;
break;
}
case 6: {
sum += 30 * 24 * 60;
break;
}
case 7: {
sum += 31 * 24 * 60;
break;
}
case 8: {
sum += 31 * 24 * 60;
break;
}
case 9: {
sum += 30 * 24 * 60;
break;
}
case 10: {
sum += 31 * 24 * 60;
break;
}
case 11: {
sum += 30 * 24 * 60;
break;
}
case 12: {
sum += 31 * 24 * 60;
break;
}
}
}
}
sum += (d2 - 1) * 24 * 60;
sum += (h2 != 0 ? (h2 - 1) * 60 : 0);
sum += M2;
for (int j = 1; j <= y; j ++) {
for (int i = 1; i <= 12; i ++) {
switch (i) {
case 1: {
sum -= 31 * 24 * 60;
break;
}
case 2: {
if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0) {
sum -= 29 * 24 * 60;
} else {
sum -= 28 * 24 * 60;
}
}
case 3: {
sum -= 31 * 24 * 60;
break;
}
case 4: {
sum -= 30 * 24 * 60;
break;
}
case 5: {
sum -= 31 * 24 * 60;
break;
}
case 6: {
sum -= 30 * 24 * 60;
break;
}
case 7: {
sum -= 31 * 24 * 60;
break;
}
case 8: {
sum -= 31 * 24 * 60;
break;
}
case 9: {
sum -= 30 * 24 * 60;
break;
}
case 10: {
sum -= 31 * 24 * 60;
break;
}
case 11: {
sum -= 30 * 24 * 60;
break;
}
case 12: {
sum -= 31 * 24 * 60;
break;
}
}
}
}
sum -= (d1 - 1) * 24 * 60;
sum -= (h1 != 0 ? (h1 - 1) * 60 : 0);
sum -= M1;
}
int main() {
int n;
cin >> n;
for (int i = 1; i <= n; i ++) {
cin >> a[i];
}
scanf ("%d-%d-%d-%d:%d", &y, &m1, &d1, &h1, &M1);
scanf ("%d-%d-%d-%d:%d", &y2, &m2, &d2, &h2, &M2);
sort (a + 1, a + n + 1);
times ();
for (int i = 1; i <= n; i ++) {
if (sum >= 0) {
sum -= a[i];
ans ++;
}
}
if (sum < 0) {
cout << ans - 1;
} else {
cout << ans;
}
return 0;
}