Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <stdio.h>#include <algorithm>#include <string.h>#include <iostream>#include <queue>#include <vector>#define LL long long#define MAXN 10005#define NN 105#define INF 2000000000005LLusing namespace std;int a[NN], b[NN];queue <int> Q;int vis[MAXN];LL dp[MAXN];int n, m, k, t, q;int spfa(){for(int i = 0; i <= k; i++) dp[i] = INF, vis[i] = 0;dp[0] = 0;vis[0] = 1;while(!Q.empty()) Q.pop();Q.push(0);while(!Q.empty()){int u = Q.front();Q.pop();vis[u] = 0;for(int i = 0; i < m; i++){int v = u + b[i];