hdu1536
来源:互联网 发布:owl.carousel.js参数 编辑:程序博客网 时间:2024/06/07 10:14
#include <iostream>#include <string.h>#include <cstdio>#include <algorithm>using namespace std;#define MAXN 10000 + 10const int INF = (~0U >> 1);int temp[MAXN], sg[MAXN];void getsg(){ sg[0] = 0; for (int i = 1; i <= 10000; i++) { bool vis[101]; memset(vis, false ,sizeof(vis)); for (int j = 0; temp[j] <= i; j++) { vis[sg[i - temp[j]]] = true; } for (int j = 0; j < 101; j++) { if (vis[j] == false) { sg[i] = j; break; } } }}void input(){ int s, n, m; while (cin >> s, s) { for (int i = 0; i < s; i++) { scanf("%d", &temp[i]); } sort(temp, temp + s); temp[s] = INF; getsg(); cin >> m; while (m--) { cin >> n; int sum = 0, x; for (int i = 0; i < n; i++) { cin >> x; sum ^= sg[x]; } cout << (sum ? 'W' : 'L'); } cout << endl; }}int main(){ input(); return 0;}