P1190

[BeiJing2009 WinterCamp]取石子游戏

[BeiJing2009 WinterCamp]取石子游戏

小 H 和小 Z 正在玩取石子游戏。游戏中有 NN 堆石子,每次操作可以从任意一堆石子中取出若干个石子,取出的数量必须是给定的 MM 种数量之一。无法进行操作的人输掉游戏。

小 H 先手。请判断小 H 是否有必胜策略;如果有,请给出一种满足要求的第一次操作。

输入格式

第一行包含一个整数 NN,表示石子堆数。

接下来 NN 行,每行包含一个整数 AiA_i,表示第 ii 堆石子的数量。

下一行包含一个整数 MM,表示每次可以取出的石子数量的种类数。

接下来 MM 行,每行包含一个整数 BiB_i,表示一次可以取出的石子数量。

输入保证 B1,B2,…,BMB_1,B_2,\ldots,B_M 按递增顺序排列。

输出格式

第一行输出 YES 或 NO,表示小 H 是否有必胜策略。

如果输出 YES,则第二行输出两个整数:第一个整数表示从哪一堆石子中取,第二个整数表示取出多少个石子。

如果有多种可行方案,优先输出石子堆编号最小的方案;若仍有多种方案,则输出取出石子数量最小的方案。

样例输入

4
7
6
9
3
2
1
2

样例输出

YES
1 1

样例解释

共有 44 堆石子,石子数量依次为 7,6,9,37,6,9,3。每次可以从任意一堆石子中取出 11 个或 22 个石子。小 H 有必胜策略,只需在第一次操作中从第 11 堆石子中取出 11 个石子。

数据范围

  • N≤10N\le 10;
  • Ai≤1000A_i\le 1000;
  • M≤10M\le 10;
  • Bi≤10B_i\le 10。

来源与许可

本题为 Beijing 2009 Winter Camp 试题「取石子游戏」,题面与测试数据整理自 BZOJ。

样例 1

输入

4
7
6
9
3
2
1
2

输出

YES
1 1