Submission #1121606

#TimeUsernameProblemLanguageResultExecution timeMemory
1121606vjudge1Ice Hockey World Championship (CEOI15_bobek)C++17
10 / 100
1069 ms50536 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {

  int64_t n, m, x, ans = 0;
  cin >> n >> m;
  unordered_multiset<int64_t> prices;
  for (int64_t i = 0; i < n; i++) {
    cin >> x;
    prices.insert(x);
  }

  map<int64_t, int64_t> dp;
  dp[0] = 1;
  for (const int64_t &price : prices) {
    for (int64_t i = 1; i <= m; i++) {
      if (i - price < 0) {
        continue;
      }

      dp[i] += dp[i - price];
    }
  }

  for (const auto &[a, b] : dp) {
    ans = max(ans, b + 1);
  }

  cout << ans << '\n';
  return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...