Submission #1216570

#TimeUsernameProblemLanguageResultExecution timeMemory
1216570thewizardman은행 (IZhO14_bank)C++20
100 / 100
168 ms31492 KiB
#pragma GCC optimize("Ofast,unroll-loops,no-stack-protector") // #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,avx2,tune=native") #include <bits/stdc++.h> using namespace std; // #include <ext/pb_ds/assoc_container.hpp> // #include <ext/pb_ds/tree_policy.hpp> // using namespace __gnu_pbds; // template<typename T> using oset = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>; #define ll long long #define ull unsigned long long #define ld long double #define pii pair<int, int> #define pll pair<ll, ll> #define pli pair<ll, int> #define plpll pair<ll, pll> #define pipii pair<int, pii> #define plpii pair<ll, pii> #define pipll pair<int, pll> #define lll tuple<ll, ll, ll> #define iii tuple<int, int, int> #define lii tuple<ll, int, int> #define lli tuple<ll, ll, int> #define md 1000000007LL #define linf 0x3f3f3f3f3f3f3f3f #define inf 0x3f3f3f3f #define lninf 0xc0c0c0c0c0c0c0c0 #define ninf 0xc0c0c0c0 #define 你好 ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, m, a[20], b[20]; bool dp[20][1<<20], flag[20][1<<20]; bool skibidi(int i, int mask, int c) { if (i == n) return true; if (flag[i][mask]) return dp[i][mask]; if (c == a[i]) return skibidi(i+1, mask, 0); if (c > a[i] || mask == (1<<m)-1) return false; for (int j = 0; j < m; j++) if ((~mask) & (1<<j)) dp[i][mask] |= skibidi(i, mask + (1<<j), c + b[j]); flag[i][mask] = 1; return dp[i][mask]; } int main() { 你好; cin >> n >> m; for (int i = 0; i < n; i++) cin >> a[i]; for (int i = 0; i < m; i++) cin >> b[i]; cout << (skibidi(0, 0, 0) ? "YES\n" : "NO\n"); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...