TopCoder

User's AC Ratio

100.0% (2/2)

Submission's AC Ratio

50.0% (2/4)

Tags

Description

巧克力很好吃,特別是堅果口味的。

某天,你拿到了一片有 $w \times h$ 格的長方形堅果巧克力,而你決定將這塊堅果巧克力分給你的朋友們。

在你的朋友當中,有 $n$ 個人對這片堅果巧克力有興趣,其中第 $i$ 個人想要恰好 $a_i$ 格堅果巧克力。 然而,為了方便派送,每個人都只能拿到一片長方形堅果巧克力(不能是很多片加總起來為 $a_i$ 格)。

而且因為你很懶,所以對於一塊堅果巧克力,你只想把它垂直或水平的分成兩份,不能分出其他形狀。 而且對於分出來的這兩片,至少其中一片必須恰好是某個朋友想要的大小,而你就會把那片堅果巧克力送給他。 具體的說,對於一片 $a \times b$ 的堅果巧克力,你只能把它分成 $a \times i$, $a \times (b-i)$ 的兩片, 或是 $j \times b$, $(a-j) \times b$ 的兩片,並把其中至少一片送給你的朋友。當然,$1 \leq i < b$,$1 \leq j < a$。

現在,為了滿足你的惰性,以及你的朋友的興趣,請你寫一支程式告訴你自己,你該如何分這片堅果巧克力,或是你沒辦法滿足每個人。

Input Format

輸入的第一行有三個正整數,分別為 $n, w, h$,以一個空白分開。

輸入的第二行有 $n$ 個正整數,依序為 $a_1, a_2, \ldots, a_n$。

  • $1 \leq n \leq 16$
  • $1 \leq a_i \leq 100$ 對所有合法的 $i$
  • $\sum_{i=1}^ n a_i = h \times w$

Output Format

輸出的第一行是 Yes 或是 No,分別代表你可以滿足每個人、你不能滿足每個人。

如果第一行是 No,那麼輸出應該就此停止,否則輸出 $n$ 行,每一行有三個以空格分開的正整數 $p_i, w_i, h_i$,代表這一次你將這片堅果巧克力分出來的其中一片的大小是 $w_i \times h_i$ 的,且你將這一片堅果巧克力分給了你的第 $p_i$ 個朋友。

若有多組合法的解,你可以輸出任意一組。

Sample Input 1

2 15 7
49 56

Sample Output 1

Yes
1 7 7
2 8 7

Sample Input 2

2 4 37
90 58

Sample Output 2

No

Hints

Problem Source

IOICamp 2020 Day5 pJ

Subtasks

No. Testdata Range Constraints Score
1 0~1 範例測資 0
2 0~95 無額外限制 100

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 1000 1048576 65536 1 2
1 1000 1048576 65536 1 2
2 1000 1048576 65536 2
3 1000 1048576 65536 2
4 1000 1048576 65536 2
5 1000 1048576 65536 2
6 1000 1048576 65536 2
7 1000 1048576 65536 2
8 1000 1048576 65536 2
9 1000 1048576 65536 2
10 1000 1048576 65536 2
11 1000 1048576 65536 2
12 1000 1048576 65536 2
13 1000 1048576 65536 2
14 1000 1048576 65536 2
15 1000 1048576 65536 2
16 1000 1048576 65536 2
17 1000 1048576 65536 2
18 1000 1048576 65536 2
19 1000 1048576 65536 2
20 1000 1048576 65536 2
21 1000 1048576 65536 2
22 1000 1048576 65536 2
23 1000 1048576 65536 2
24 1000 1048576 65536 2
25 1000 1048576 65536 2
26 1000 1048576 65536 2
27 1000 1048576 65536 2
28 1000 1048576 65536 2
29 1000 1048576 65536 2
30 1000 1048576 65536 2
31 1000 1048576 65536 2
32 1000 1048576 65536 2
33 1000 1048576 65536 2
34 1000 1048576 65536 2
35 1000 1048576 65536 2
36 1000 1048576 65536 2
37 1000 1048576 65536 2
38 1000 1048576 65536 2
39 1000 1048576 65536 2
40 1000 1048576 65536 2
41 1000 1048576 65536 2
42 1000 1048576 65536 2
43 1000 1048576 65536 2
44 1000 1048576 65536 2
45 1000 1048576 65536 2
46 1000 1048576 65536 2
47 1000 1048576 65536 2
48 1000 1048576 65536 2
49 1000 1048576 65536 2
50 1000 1048576 65536 2
51 1000 1048576 65536 2
52 1000 1048576 65536 2
53 1000 1048576 65536 2
54 1000 1048576 65536 2
55 1000 1048576 65536 2
56 1000 1048576 65536 2
57 1000 1048576 65536 2
58 1000 1048576 65536 2
59 1000 1048576 65536 2
60 1000 1048576 65536 2
61 1000 1048576 65536 2
62 1000 1048576 65536 2
63 1000 1048576 65536 2
64 1000 1048576 65536 2
65 1000 1048576 65536 2
66 1000 1048576 65536 2
67 1000 1048576 65536 2
68 1000 1048576 65536 2
69 1000 1048576 65536 2
70 1000 1048576 65536 2
71 1000 1048576 65536 2
72 1000 1048576 65536 2
73 1000 1048576 65536 2
74 1000 1048576 65536 2
75 1000 1048576 65536 2
76 1000 1048576 65536 2
77 1000 1048576 65536 2
78 1000 1048576 65536 2
79 1000 1048576 65536 2
80 1000 1048576 65536 2
81 1000 1048576 65536 2
82 1000 1048576 65536 2
83 1000 1048576 65536 2
84 1000 1048576 65536 2
85 1000 1048576 65536 2
86 1000 1048576 65536 2
87 1000 1048576 65536 2
88 1000 1048576 65536 2
89 1000 1048576 65536 2
90 1000 1048576 65536 2
91 1000 1048576 65536 2
92 1000 1048576 65536 2
93 1000 1048576 65536 2
94 1000 1048576 65536 2
95 1000 1048576 65536 2