Related Articles
Minimum numbers (smaller than or equal to N) with sum S
• Difficulty Level : Easy
• Last Updated : 03 Dec, 2018

Given N numbers(1, 2, 3, ….N) and a number S. The task is to print the minimum number of numbers that sum up to give S.

Examples:

Input: N = 5, S = 11
Output: 3
Three numbers (smaller than or equal to N) can be any of the given combinations.
(3, 4, 4)
(2, 4, 5)
(1, 5, 5)
(3, 3, 5)

Input: N = 1, S = 10
Output: 10

Approach: Greedily we choose N as many times we can, and then if anything less than N is left we will choose that number which adds up to give S, hence the total number of numbers are (S/N) + 1(if S%N>0).

Below is the implementation of the above approach.

## C++

 `// C++ program to find the minimum numbers``// required to get to S``#include ``using` `namespace` `std;`` ` `// Function to find the minimum``// numbers required to get to S``int` `minimumNumbers(``int` `n, ``int` `s)``{``    ``if` `(s % n)``        ``return` `s / n + 1;``    ``else``        ``return` `s / n;``}`` ` `// Driver Code``int` `main()``{``    ``int` `n = 5;``    ``int` `s = 11;``    ``cout << minimumNumbers(n, s);``    ``return` `0;``}`

## Java

 `// Java program to find the minimum numbers``// required to get to S``import` `java.io.*;`` ` `class` `GFG {``     ` ` ` `// Function to find the minimum``// numbers required to get to S``static` `int` `minimumNumbers(``int` `n, ``int` `s)``{``    ``if` `((s % n)>``0``)``        ``return` `s / n + ``1``;``    ``else``        ``return` `s / n;``}`` ` `// Driver Code`` ` `    ``public` `static` `void` `main (String[] args) {``        ``int` `n = ``5``;``    ``int` `s = ``11``;``    ``System.out.println(minimumNumbers(n, s));``    ``}``}``// This code is contributed by shs..`

## Python 3

 `# Python 3 program to find the ``# minimum numbers required to get to S`` ` `# Function to find the minimum``# numbers required to get to S``def` `minimumNumbers(n, s):`` ` `    ``if` `(s ``%` `n):``        ``return` `s ``/` `n ``+` `1``;``    ``else``:``        ``return` `s ``/` `n;`` ` `# Driver Code``n ``=` `5``;``s ``=` `11``;``print``(``int``(minimumNumbers(n, s)));`` ` `# This code is contributed ``# by Shivi_Aggarwal`

## C#

 `// C# program to find the minimum numbers``// required to get to S``using` `System;`` ` `class` `GFG {``     ` ` ` `// Function to find the minimum``// numbers required to get to S``static` `int` `minimumNumbers(``int` `n, ``int` `s)``{``    ``if` `((s % n)>0)``        ``return` `s / n + 1;``    ``else``        ``return` `s / n;``}`` ` `// Driver Code`` ` `    ``public` `static` `void` `Main () {``        ``int` `n = 5;``    ``int` `s = 11;``    ``Console.WriteLine(minimumNumbers(n, s));``    ``}``}``// This code is contributed by shs..`

## PHP

 ``
Output:
```3
```

Attention reader! Don’t stop learning now. Get hold of all the important mathematical concepts for competitive programming with the Essential Maths for CP Course at a student-friendly price. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

My Personal Notes arrow_drop_up