#include using namespace std; long long dp[51][51][5001]; int main() { int N; cin >> N; vectorA(N); for(int i = 0; i < N; i++) { cin >> A[i]; } sort(A.begin(),A.end()); dp[0][0][0] = 1; long long ans = 0; for(int i = 0; i < N; i++) { for(int j = 0; j < N; j++) { for(int k = 0; k <= 5000; k++) { if(!dp[i][j][k]) { continue; } dp[i+1][j][k] += dp[i][j][k]; if(j+1 <= N && k+A[i] <= 5000) { dp[i+1][j+1][k+A[i]] += dp[i][j][k]; if(j+1 >= 2 && (k+A[i])%j == 0 && (k+A[i])/j >= A[i]) { ans += dp[i][j][k]; } } } } } cout << ans << endl; }