UVA1099 Sharing Chocolate

题目描述

(摘自《算法竞赛入门经典训练指南》,刘汝佳 陈峰 著) 给出一块长为 $x$, 宽为 $y$ 的矩形巧克力,每次操作可以沿一条直线把一块巧克力切割成两块长宽均为整数的巧克力(一次不能同时切割多块巧克力)。 问:是否可以经过若干次操作得到 $n$ 块面积分别为 $a_1, a_2, ..., a_n$ 的巧克力。

输入格式

输入包含若干组数据: 每组数据第一行为一个整数 $n(1 \leq n \leq 15)$; 第二行两个整数 $x,y(1 \leq x, y \leq 100)$; 第三行 $n$ 个整数 $a_1,a_2, ... ,a_n$。 输入结束标志为 $n = 0$。

输出格式

对于每组数据,如果切割成功,输出 `Yes`,否则输出 `No`