Consider a game where a player can score 3 or 5 or 10 points in a move. Given a total score n, find number of ways to reach the given score.
Input: n = 20 Output: 4 There are following 4 ways to reach 20 (10, 10) (5, 5, 10) (5, 5, 5, 5) (3, 3, 3, 3, 3, 5) Input: n = 13 Output: 2 There are following 2 ways to reach 13 (3, 5, 5) (3, 10)
This problem is a variation of coin change problem and can be solved in O(n) time and O(n) auxiliary space.
The idea is to create a table of size n+1 to store counts of all scores from 0 to n. For every possible move (3, 5 and 10), increment values in table.
Count for 20 is 4 Count for 13 is 2
Exercise: How to count score when (10, 5, 5), (5, 5, 10) and (5, 10, 5) are considered as different sequences of moves. Similarly, (5, 3, 3), (3, 5, 3) and (3, 3, 5) are considered different.
This article is contributed by Rajeev Arora. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above
- Count number of ways to reach a given score in a Matrix
- Count ways to reach a score using 1 and 2 with no consecutive 2s
- Count number of ways to jump to reach end
- Count number of ways to reach destination in a Maze
- Count ways to reach the n'th stair
- Count ways to reach the nth stair using step 1, 2 or 3
- Number of ways to reach the end of matrix with non-zero AND value
- Number of ways to reach Nth floor by taking at-most K leaps
- Count number of ways to partition a set into k subsets
- Count number of ways to cover a distance
- Count the number of ways to traverse a Matrix
- Count number of ways to fill a "n x 4" grid using "1 x 4" tiles
- Count the number of ways to tile the floor of size n x m using 1 x m size tiles
- Count of different ways to express N as the sum of 1, 3 and 4
- Count possible ways to construct buildings