Consider a game where a player can score 3 or 5 or 10 points in a move. The program must accept an integer S( total score of the player) as the input. The program must print the number of ways to reach the given score S at any number of moves.
Boundary Condition(s):
1 <= S <= 100000
Input Format:
The first line contains the value of score S.
Output Format:
The first line contains the number of ways to reach the given score at any number of moves.
Example Input/Output 1:
Input:
20
Output:
4
Explanation:
To reach 20 there are 4 ways
10 10
5 5 10
5 5 5 5
3 3 3 3 3 5
Example Input/Output 2:
Input:
5
Output:
1
#include <stdio.h> #include <stdlib.h> #define max(x,y) ((x>y)? x:y) int main() { int num; scanf("%d",&num); int arr[]={3,5,10}; int avg[1000000]={1}; for (int ele=0;ele<3;ele++){ for(int foo=arr[ele];foo<=num;foo++){ avg[foo]+=avg[foo-arr[ele]]; } } printf("%d",avg[num]); }