HDU 5890 Eighty seven(DP+bitset优化)
生活随笔
收集整理的這篇文章主要介紹了
HDU 5890 Eighty seven(DP+bitset优化)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目鏈接 Eighty seven
背包(用bitset預處理)然后對于每個詢問O(1)回答即可。
預處理的時候背包。
#include <bits/stdc++.h>using namespace std;#define rep(i, a, b) for(int i(a); i <= (b); ++i) #define dec(i, a, b) for(int i(a); i >= (b); --i)const int N = 52;int T, q, n; int f[N][N][N], c[5], a[N], Q;bitset <90> A[12];int check(int i, int j, int k){rep(h, 0, 10) A[h].reset(); A[0][0] = 1;rep(h, 1, n) if (h != i && h != j && h != k && a[h] <= 87) dec(p, 9, 0){A[p + 1] |= A[p] << a[h];if (A[10][87]) return 1;}return 0; }int main(){scanf("%d", &T);while (T--){scanf("%d", &n);rep(i, 1, n) scanf("%d", a + i);rep(i, 1, n) rep(j, i, n) rep(k, j, n) f[i][j][k] = check(i, j, k);scanf("%d", &Q);while (Q--){scanf("%d%d%d", c + 1, c + 2, c + 3);sort(c + 1, c + 4);puts(f[c[1]][c[2]][c[3]] ? "Yes" : "No");}}return 0;}?
轉載于:https://www.cnblogs.com/cxhscst2/p/6720341.html
總結
以上是生活随笔為你收集整理的HDU 5890 Eighty seven(DP+bitset优化)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在Windows 7上安装Team Fo
- 下一篇: 简单的HTTP协议——《图解http》第