Submission #1121652

#TimeUsernameProblemLanguageResultExecution timeMemory
1121652vjudge1Ice Hockey World Championship (CEOI15_bobek)C++17
10 / 100
1074 ms162124 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 &[i, b] : dp) { if (i + price > m or b == 0) { continue; } dp[i + price] += b; } } 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...