10102. 二十一點

I'm a slow walker, but I never walk backwards.

Task Description
21點是一種經典的撲克牌遊戲,玩家需要用自己的手牌組合成21點,
請寫一個程式幫助使用者判斷能不能組成21點。

給定一個由正整數組成的數列,請找出有幾種能夠組成21點的組合,並將所有可能組成21的組合印出來,
跟21點遊戲不同的是,組合中的數字可以重複使用。

注意:必須使用遞迴。

Input Format
測資為一正整數數列,數字大小範圍:1 <= N <= 13。

Output Format
第一列請印出有幾種組合,第二列開始印出所有可能的組合。
同一列的數字由小到大排列,每個數字間以空格隔開,注意最後不要多印一個空格。
印出組合的順序由前面的數字較小者先印。
(請參考下面範例)

Sample Input

3 7 9

Sample Output

4
3 3 3 3 3 3 3
3 3 3 3 9
3 9 9
7 7 7

Sample Input

4 5 6 9 11

Sample Output

7
4 4 4 4 5
4 4 4 9
4 5 6 6
4 6 11
5 5 5 6
5 5 11
6 6 9

Submit

Login

Testdata Set

Download Testdata