Ninja And The New Year Guests
Ninja has organized the new year party and invited all the programmers for it, as being the programmer also has been invited by Ninja.
To detect whether the guest is a programmer or not, Ninja has set some tasks for them, such that only programmers can code them.
You have also been asked to solve and code the following task to verify your identity.
Given two integers, 'N' and 'K' find the number of permutation arrays of 'N' integers from 0 to 'N' - 1 satisfying the below condition.
There should be at least 'K' positions in the array such that 'ARR[I] = I' ( 0 <= I < N ) satisfies.
You are required to output the answer modulo 10^9 +7.
EXAMPLE:
Input: 'N' = 4 'K' = 3
Output: 1
There is only one permutation [0, 1, 2, 3] such that a number of elements with 'ARR[I] = I' is 'K' = 3.
Input Format :
The first line of input contains an integer 'T', denoting the number of test cases.
For each test case, there will be only one line containing two integers' N' and 'K'.
Output format :
For each test case, print the number of permutations modulo 10^9 + 7 satisfying the number of elements with 'ARR[I] = I' is 'K'.
Note :
You don't need to print anything. It has already been taken care of. Just implement the given function.
Constraints :
1 <= 'T' <= 10^4
4 <= 'N' <= 10^18
'N - 4' <= 'K' <= 'N'
1 <= K
Time Limit: 1sec
CodingNinjas
author
2y
Brute Force Approach
Approach: We will recursively find all possible permutations and then check for each of them whether it is following the condition or not.
We will maintain a counter based on that ...read more
CodingNinjas
author
2y
Efficient Approach Using Derangements
Approach:
Let's first fix the positions in the array such that 'ARR[I] != I', Say there are 'M' such positions. (0 <= M <= 'N - K')
Let's count the number of perm...read more
Help your peers!
Add answer anonymously...
Top Nagarro Software Developer interview questions & answers
Popular interview questions of Software Developer
Stay ahead in your career. Get AmbitionBox app
Helping over 1 Crore job seekers every month in choosing their right fit company
65 L+
Reviews
4 L+
Interviews
4 Cr+
Salaries
1 Cr+
Users/Month
Contribute to help millions
Get AmbitionBox app