Given three integers **N, K and S**, the task is to choose an array of size **N** such that there exists exactly **K** sub-arrays with sum **S**.

**Note:** There can be many solution arrays to this problem.

**Examples:**

Input:N = 4, K = 2, S = 3Output:1 2 3 4Explanation:

One of the possible array is [ 1, 2, 3, 4 ]

There exist exactly two subarrays with sum 3

Subarrays with Sum(3) = [ [ 1, 2 ], [ 3 ] ]

Input:N = 5, K = 3, S = 50Output:25 25 25 10 40Explanation:

One of the possible array is [ 25, 25, 25, 10, 40 ]

There exist exactly three subarrays with sum 50

Subarrays with Sum(50) = [ [ 25, 25 ], [ 25, 25 ], [ 10, 40 ] ]

**Approach:**

One of the Solution Array for this problem contains **S** element **K** times and **S+1** element **(N-K)** times, to form K Sub-arrays of exactly one element with S as sum. If we combine any two or more elements of the array then it will give sum greater than S.

Below is the implementation of the above approach:

## C++

`// C++ program to find array ` `// with K subarrays with sum S` ` ` `#include<bits/stdc++.h> ` `using` `namespace` `std; ` ` ` `// Function to find array ` `// with K subarrays with sum S` `void` `SubarraysWithSumS(` `int` `n, ` `int` `k, ` `int` `s)` `{` ` ` `for` `(` `int` `i=0;i<k;i++)` ` ` `cout << s << ` `" "` `;` ` ` `for` `(` `int` `i=k;i<n;i++)` ` ` `cout << s+1 << ` `" "` `;` `} ` ` ` `// Driver Code` `int` `main() ` `{ ` ` ` `int` `n = 4, k = 2, s = 3;` ` ` ` ` `// Function call` ` ` `SubarraysWithSumS(n, k, s);` ` ` `return` `0; ` `} ` |

## Java

`// Java program to find array ` `// with K subarrays with sum S` `class` `GFG` `{ ` ` ` `// Function to find array ` `// with K subarrays with sum S` `static` `void` `SubarraysWithSumS(` `int` `n, ` `int` `k, ` `int` `s)` `{` ` ` `for` `(` `int` `i = ` `0` `; i < k; i++)` ` ` `System.out.print(s + ` `" "` `);` ` ` `for` `(` `int` `i = k; i < n; i++)` ` ` `System.out.print(s + ` `1` `+ ` `" "` `);` `} ` ` ` `// Driver Code` `public` `static` `void` `main(String[] args) ` `{ ` ` ` `int` `n = ` `4` `, k = ` `2` `, s = ` `3` `;` ` ` ` ` `// Function call` ` ` `SubarraysWithSumS(n, k, s);` `} ` `} ` ` ` `// This code is contributed by 29AjayKumar` |

## Python3

`# Python3 program to find array` `# with K subarrays with sum S` ` ` `# Function to find array` `# with K subarrays with sum S` `def` `SubarraysWithSumS(n, k, s):` ` ` `for` `i ` `in` `range` `(k):` ` ` `print` `(s, end` `=` `" "` `)` ` ` `for` `i ` `in` `range` `(k, n):` ` ` `print` `(s ` `+` `1` `, end ` `=` `" "` `)` ` ` `# Driver Code` `n ` `=` `4` `k ` `=` `2` `s ` `=` `3` ` ` `# Function call` `SubarraysWithSumS(n, k, s)` ` ` `# This code is contributed by mohit kumar 29` |

## C#

`// C# program to find array ` `// with K subarrays with sum S` `using` `System;` ` ` `class` `GFG` `{ ` ` ` `// Function to find array ` `// with K subarrays with sum S` `static` `void` `SubarraysWithSumS(` `int` `n, ` `int` `k, ` `int` `s)` `{` ` ` `for` `(` `int` `i = 0; i < k; i++)` ` ` `Console.Write(s + ` `" "` `);` ` ` `for` `(` `int` `i = k; i < n; i++)` ` ` `Console.Write(s + 1 + ` `" "` `);` `} ` ` ` `// Driver Code` `public` `static` `void` `Main(String[] args) ` `{ ` ` ` `int` `n = 4, k = 2, s = 3;` ` ` ` ` `// Function call` ` ` `SubarraysWithSumS(n, k, s);` `} ` `} ` ` ` `// This code is contributed by PrinciRaj1992` |

**Output:**

3 3 4 4

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****.**