//土尔逊Torson 编写于2023/06/16 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <algorithm> using namespace std; const int MAXN = 20; int n; int count12401; void DFS12401(int m[], int total, int pos) { if (total == 40) { count12401++; return; } else { for (int i = pos; i < n; ++i) { DFS12401(m, total + m[i], i + 1); } } } int main() { while (scanf("%d", &n) != EOF) { int m[MAXN]; for (int i = 0; i < n; ++i) { scanf("%d", &m[i]); } sort(m, m + n); DFS12401(m, 0, 0); printf("%d\n", count12401); } } // 64 位输出请用 printf("%lld")