10313 - Pay the Price

從前有一個國家那裡的人民有非常有趣的習慣。有些人懶惰,有些人富有。有些人非常平窮,有些人小氣。明顯的有些有錢人小氣 (貧窮人絕不會小氣,因為他本來就沒多少東西) 並且懶惰,但是貧窮人也都懶惰 (這也是他們永遠都貧窮的原因)。以下的事在這個國家都是真實的:

a) 由於有錢人小氣,沒有任何東西的價格會超過 $300$ 元。
b) 由於貧窮人懶惰,每件東西的價格都是整數。(連乞丐要錢都至少要 $1$ 元)
c) 硬幣的面值從 $1$$300$ 元,所以那些懶惰的有錢人可以只用一個硬幣付任何的價錢。

你的任務是找出一個人要付一個價錢有多少種方法,條件是使用硬幣的數目是被限定的。例如:要用 $3$ 個硬幣來付 $6$ 元有 $3$ 種方法:$1+1+4$$1+2+3$$2+2+2$。依此類推,一個人付 $6$ 元最多使用 $6$ 個硬幣的方法有 $11$ 種。

Input

每組測試資料 $1$ 列,每列可能含有 $1$$2$$3$ 個整數。其中第一個整數一定是 $N$ ($0\leq{N}\leq{300}$),代表要付的錢是多少。其他的數均大於等於 $0$,小於等於 $1000$

Output

對每組測試資料輸出一列,代表付 $N$ 元有多少種方法,分為以下三種:

如果該組測試資料僅有 $1$ 個整數,請輸出付 $N$ 元的方法有多少種 (用多少個硬幣不拘)。

如果該組測試資料有 $2$ 個整數 $N$$L1$,請輸出付 $N$ 元且最多用 $L1$ 個硬幣的方法有多少種。

如果該組測試資料有 $3$ 個整數 $N$$L1$$L2$,請輸出付 $N$ 元且最少用 $L1$ 個硬幣,最多用 $L2$ 個硬幣的方法有多少種。在這裡 $L1$ 一定小於等於 $L2$

Sample Input

6
6 34
6 2 5
6 1 6
0 
0 0 
0 1 
0 0 0 
0 0 1 
0 1 1 
0 1 2 
200 30 75 

Sample Output

11
7
9
11
1
1
1
1
1
0
0
2347163627458