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

hide comments
farmers_rice: 2015-10-09 02:34:44

keep getting NZEC error even though the only exceptions thrown are in input/output

Sarthak Munshi: 2015-10-06 17:54:01

STARS AND BARS !

xproxmess: 2015-09-27 19:57:49

This is my code - http://ideone.com/UfKbDT
Why is it giving a wrong output for the second test case even though the logic is correct?

Yuvak Patel: 2015-07-28 16:38:07

GOT AC in 1 go, my 25th...

Akshay Aradhya: 2015-07-18 23:22:04

@dheeraj You logic is not correct.If long long int works then unsigned long long will definitely work. You must have used the wrong format specifier.

DHEERAJ KUMAR: 2015-06-09 23:55:53

using unsigned long long int costed me 2 WA's. instead use long long int to get AC :)

Usama: 2015-05-25 10:49:27

use unsigned long long give me many WAs

scyth3r: 2015-05-09 22:37:40

piece of cake....:D

Arjun Verma: 2015-03-23 19:10:28

many WA , since was using (long double ) instead use long long int
i.e. as mentioned by @Walid Amin:
for test case
Walid Amin: 2015-02-05 20:50:24
i suggest to add this case
1
64 30
correct answer must be
759510004936100355
but instead the answer ACCEPTED is 310981744965266872 ;

Walid Amin: 2015-02-05 20:50:24

i suggest to add this case
1
64 30
correct answer must be
759510004936100355
it fits signed 64 bit

but many accepted codes gives this answer: 310981744965266872

i suggest you add it bec it will fail many codes
THANK YOU


Added by:Adrian Kuegel
Date:2004-06-19
Time limit:1s
Source limit:10000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: NODEJS PERL6 VB.NET
Resource:own problem