#include #include #include #include int main() { std::vector a(3); for (auto &e : a) { std::cin >> e; } std::sort(a.begin(), a.end()); size_t n; std::cin >> n; std::vector b(n); for (auto &e : b) { std::cin >> e; } std::sort(b.begin(), b.end()); std::vector> dp(n + 1, std::vector(4, 0)); for (size_t i = 1; i < n + 1; i++) for (size_t j = 0; j < 4; j++) { if (j < 3 && a[j] <= b[i]) { dp[i][j + 1] += dp[i - 1][j]; dp[i][j] += dp[i - 1][j]; } else { dp[i][j] += 2 * dp[i - 1][j]; } } std::cout << dp[n][3] << std::endl; }