제출 #1121644

#제출 시각아이디문제언어결과실행 시간메모리
1121644vjudge1Ice Hockey World Championship (CEOI15_bobek)C++17
50 / 100
1067 ms39608 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);
  }

  unordered_map<int64_t, int64_t> dp;
  dp[0] = 1;

  for (const int64_t &price : prices) {
    for (int64_t i = m; i >= price; i--) {
      if (dp.find(i - price) == dp.end()) {
        continue;
      }

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

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

  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...