Pagini recente » Cod sursa (job #2386659) | Cod sursa (job #1065662) | Cod sursa (job #835209) | Istoria paginii runda/4321/clasament | Cod sursa (job #1562187)
#include <cstdio>
#include <algorithm>
#include <iostream>
using namespace std;
int X[1000001], V[101], nodes;
int main() {
int n, s;
freopen("loto.in", "r", stdin);
freopen("loto.out", "w", stdout);
cin >> n >> s;
for(int i=1; i<=n; i++)
cin >> V[i];
for(int i=1; i<=n; i++)
for(int j=1; j<=n; j++)
for(int k=1; k<=n; k++) {
X[++nodes] = V[i] + V[j] + V[k];
}
long long sol = 0;
sort(X + 1, X + nodes + 1);
n = n * n * n;
int j = n, k = n;
for(int i = 1; i <= n; i += 1) {
while(X[i] + X[j] >= s) j--;
while(X[i] + X[k] > s) k--;
sol += k - j;
}
cout << sol;
return 0;
}