Cod sursa(job #2398820)
| Utilizator | Data | 6 aprilie 2019 11:14:47 | |
|---|---|---|---|
| Problema | Oite | Scor | 10 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.41 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream in("oite.in");
ofstream out("oite.out");
unordered_map <int, int> H[5];
int main()
{
int n, m;
in >> n >> m;
for(int i = 1; i <= n; i++)
{
int x;
in >> x;
if(x > m)
continue;
for(int k = 3; k >= 1; k--)
for(auto j : H[k])
if(j.first <= m - x)
H[k + 1][j.first + x] += H[k][j.first];
H[1][x]++;
}
out << H[4][m];
}