JOKER1 - Knifes Are Fun
"Do you know, why I use a knife? Guns are too quick. You can't savor all the little emotions. You see, in their last moments, people show you who they really are. So in a way, I know your friends better than you ever did. Would you like to know which of them were cowards?"
Joker has many knifes, and he wants to assign a distinct integer to each knife so he can easily identify them. The i-th knife can have an integer between 1 and maxNumber[i], inclusive.
Return the number of ways he can assign numbers to his knifes, modulo 1,000,000,007. If it's impossible to assign distinct integers to the knifes, print 0.
Input
The first line contains the number of test cases T (1 <= T <= 666)
Each test case has 2 lines - 1st line denotes number of knifes N (1 <= N <= 66) Joker has and the 2nd line denotes the numbers {maxNumber[0]....maxNumber[N-1]} Joker has.
1 <= maxNumber[i] <= 3000
Output
Print the number of ways Joker can assign numbers to his knifes, modulo 1,000,000,007. If it's impossible to assign distinct integers to the knifes, print 0. In last line print the string "KILL BATMAN". Don't print any extra spaces.
Example
Input: 3 1 7 2 5 8 3 2 1 2 Output: 7 35 0 KILL BATMAN
Explanation
- Test case 1 : Joker can assign any number between 1 and 7, inclusive, to the only knife.
- Test case 2 : Joker wants you too think !
- Test case 3 : (1,1,1) (1,1,2) (2,1,1) (2,1,2) are the possible combinations . As the numbering of knifes is not unique so the output is 0.
hide comments
abdou_93:
2013-11-25 13:41:03
Nice problem :D
|
|
Ouditchya Sinha:
2013-11-25 13:41:03
Nice Question... AC :) |
|
Kevin Sebastian:
2013-11-25 13:41:03
@author is it possible for you to give me test cases where my code is failing and can you tell me if my logic is correct
|
|
Kevin Sebastian:
2013-11-25 13:41:03
@author or someone pls pls post tricky test cases..dont knw why im getting wa
|
|
Francky:
2013-11-25 13:41:03
Even in Python I got 0.00s. It would be better with a 2MB input file, (T=1000, N=randint(1,1000), maxLen[i] = randint(1, 1000) ).
|
|
Alex Anderson:
2013-11-25 13:41:03
I'm guessing maybe the author had an n! solution.
|
|
Mitch Schwartz:
2013-11-25 13:41:03
Why are the constraints so low? |
|
Alex Anderson:
2013-11-25 13:41:03
The limits could be larger, but this was alright. |
Added by: | Rajarshi Sarkar |
Date: | 2013-02-23 |
Time limit: | 0.5s |
Source limit: | 5000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: ASM64 |