MARBLES  Marbles
Hänschen dreams he is in a shop with an infinite amount of marbles. He is allowed to select n marbles. There are marbles of k different colors. From each color there are also infinitely many marbles. Hänschen wants to have at least one marble of each color, but still there are a lot of possibilities for his selection. In his effort to make a decision he wakes up. Now he asks you how many possibilites for his selection he would have had. Assume that marbles of equal color can't be distinguished, and the order of the marbles is irrelevant.
Input
The first line of input contains a number T <= 100 that indicates the number of test cases to follow. Each test case consists of one line containing n and k, where n is the number of marbles Hänschen selects and k is the number of different colors of the marbles. You can assume that 1<=k<=n<=1000000.
Output
For each test case print the number of possibilities that Hänschen would have had. You can assume that this number fits into a signed 64 bit integer.
Example
Input: 2 10 10 30 7 Output: 1 475020
Added by:  Adrian Kuegel 
Date:  20040619 
Time limit:  0.248s 
Source limit:  10000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel Pentium G860 3GHz) 
Languages:  All except: NODEJS PERL 6 SCM chicken VB.net 
Resource:  own problem 
hide comments
Arjun Verma:
20150323 19:10:28
many WA , since was using (long double ) instead use long long int


Walid Amin:
20150205 20:50:24
i suggest to add this case


Harsha:
20130331 13:21:43
in python we always get time limit exceeded
