#P1950. Dessert
Dessert
题目描述:
农夫约翰针对奶牛排队就餐制定了一条新规则。不仅 ()头奶牛必须按顺序排队就餐,而且它们必须在每两头奶牛之间放置一张餐巾纸,餐巾纸上标有 。为了能吃到甜点,奶牛的编号和餐巾纸上的符号必须组成一个计算结果为 的数值表达式。标有 的餐巾纸能让奶牛组成更大的数字。以下是一个针对七头奶牛的等式示例:
1 - 2 . 3 - 4 . 5 + 6 . 7
这意味着算式为 ,其计算结果为 。你的任务是帮助奶牛们吃到甜点。(注意: 在计算时会将数字组合成 来进行运算。)
输入:
输入一行,包含一个单独的整数。
输出:
对于前 个可能的表达式,每行输出一个表达式,然后再输出一行,包含一个单独的整数,表示所有可能答案的总数。每个表达式行的一般格式为数字、空格、餐巾纸上的符号、空格、数字、空格、餐巾纸上的符号,依此类推。输出的顺序按照字典序排列, 排在 之前, 排在 之前。如果能形成的表达式少于 个,则输出所有的表达式。
输入数据1
7
输出数据1
1 + 2 - 3 + 4 - 5 - 6 + 7
1 + 2 - 3 - 4 + 5 + 6 - 7
1 - 2 + 3 + 4 - 5 + 6 - 7
1 - 2 - 3 - 4 - 5 + 6 + 7
1 - 2 . 3 + 4 + 5 + 6 + 7
1 - 2 . 3 - 4 . 5 + 6 . 7
6
来源:
美国计算机奥林匹克竞赛(USACO)2002 年 2 月赛