你負責替你的朋友們訂披薩。他們每個人都告訴你他想要什麼,不想要什麼。當然,他們也都瞭解只有一個披薩,或許不可能所有的需求都能實現。你能訂一個披薩,這個披薩能滿足每個人至少一項需求嗎?
賣披薩的店提供了以下16種配方,你可以選擇要不要某一種配方在披薩上:
配方代碼 | 配方名稱 |
A | Anchovies(鯷魚) |
B | Black Olives(黑橄欖) |
C | Canadian Bacon(加拿大培根) |
D | Diced Garlic(蒜頭切塊) |
E | Extra Cheese(額外的Cheese) |
F | Fresh Broccoli(新鮮甘藍菜) |
G | Green Peppers(青椒) |
H | Ham(火腿) |
I | Italian Sausage(義大利香腸) |
J | Jalapeno Peppers |
K | Kielbasa |
L | Lean Ground Beef(牛肉) |
M | Mushrooms(香菇) |
N | Nonfat Feta Cheese |
O | Onions(洋蔥) |
P | Pepperoni |
你的每個朋友提供你他想要或不想要的配方,以下面的格式表示:
+O-H+P;
表示他想要配方O,或者不想要配方H,或者想要配方P。而
-E-I-D+A+J;
表示他不想要配方E,或者不想要配方I,或者不想要配方D,或者想要配方A,或者想要配方J。
Input
輸入含有多組測試資料。每組測試資料包含了1到12位朋友的需求,每個朋友一列。
若遇到僅含有一個 . 的一列,代表此組測試資料結束。請參考Sample Input。
Output
對每組測試資料輸出一列,輸出披薩上的配方代碼(按字母順序輸出),使這個披薩能滿足每個人至少一項需求。如果答案不只一種組合,輸出任何一種組合都可以。
如果沒有任何一種配方組合可以滿足每個人至少一項需求,請輸出 :
No pizza can satisfy these requests.
輸出格式請參考Sample Output。
Sample Input | Sample Output |
+A+B+C+D-E-F-G-H; -A-B+C+D-E-F+G+H; -A+B-C+D-E+F-G+H; . +A+B+C+D; +E+F+F+H; +A+B-G; +O+J-F; +H+I+C; +P; +O+M+L; +M-L+P; . +A+B+C+D; +E+F+F+H; +A+B-G; +P-O; +O+J-F; +H+I+C; +P; +O; +O+M+L; -O-P; +M-L+P; . |
Toppings: Toppings: CELP No pizza can satisfy these requests. |