#include #include #include #include #include #include #include #include using namespace std; char a[12]; int brun[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; int run[12] = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; int f(char a[]) { int flag = 1; for (int i = 6; i < 10; i++) { if (a[i] != a[i + 1] + 1) { flag = 0; } } if (flag) { if (a[10] >= '0')return 1; } flag = 1; for (int i = 6; i < 10; i++) { if (a[i] != a[i + 1] - 1) flag = 0; } if (flag) { if (a[10] <= '9')return 1; } flag = 1; for (int i = 6; i < 10; i++) { if (a[i] != a[i + 1]) flag = 0; } if (flag)return 1; int year = (a[3] - '0') * 1000 + (a[4] - '0') * 100 + (a[5] - '0') * 10 + (a[6] - '0'); if (year >= 1980 && year <= 2016) { int month = (a[7] - '0') * 10 + (a[8] - '0'); int day = (a[9] - '0') * 10 + (a[10] - '0'); if (month <= 0 || month > 12)return 0; if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0)) { if (day <= run[month - 1])return 1; else return 0; } else { if (day <= brun[month - 1])return 1; else return 0; } } return 0; } int main() { int T; cin >> T; while (T--) { int n; scanf("%d", &n); int x, y; scanf("%d %d", &x, &y); long long cot = 0; for (int i = 0; i < n; i++) { scanf("%s", a); if (f(a))cot += x; else cot += y; } printf("%I64d\n", cot); } system("pause"); return 0; }