# Count numbers present in partitions of N

Given an integer **N**, the task is to count the numbers in ordered integer partitions of **N**.**Examples:**

Input:N = 3Output:8

Integer partitions of N(=3) are {{1 + 1 + 1}, {1 + 2}, {2 + 1}, {3}}.

Numbers in integer partition of N are:{1, 1, 1, 1, 2, 2, 1, 3}

Therefore, the count of numbers in integer partitions of N(=3) is 8.

Input:N = 4Output:20

**Approach:** The problem can be solved based on the following observations:

Count of ways to partition **N** into exactly **k** partitions =

Therefore, the count of numbers in ordered integer partitions of **N** is

Below is the implementation of the above approach:

## C++

`// C++ program to implement` `// the above approach ` `#include <bits/stdc++.h>` `using` `namespace` `std;` `// Function to count of numbers in` `// ordered partitions of N` `int` `CtOfNums(` `int` `N)` `{` ` ` ` ` `// Stores count the numbers in` ` ` `// ordered integer partitions` ` ` `int` `res = (N + 1) * (1 << (N - 2));` ` ` ` ` `return` `round(res);` `}` ` ` `// Driver Code` `int` `main()` `{` ` ` `int` `N = 3;` ` ` ` ` `cout << CtOfNums(N);` `}` `// This code is contributed by code_hunt` |

## Java

`// Java program to implement` `// the above approach ` `import` `java.io.*;` `class` `GFG{` ` ` `// Function to count of numbers in` `// ordered partitions of N` `static` `int` `CtOfNums(` `int` `N)` `{` ` ` ` ` `// Stores count the numbers in` ` ` `// ordered integer partitions` ` ` `int` `res = (N + ` `1` `) * (` `1` `<< (N - ` `2` `));` ` ` ` ` `return` `Math.round(res);` `}` ` ` `// Driver Code` `public` `static` `void` `main (String[] args)` `{` ` ` `int` `N = ` `3` `;` ` ` ` ` `System.out.print(CtOfNums(N));` `}` `}` `// This code is contributed by code_hunt` |

## Python3

`# Python3 program to implement` `# the above approach` `# Function to count of numbers in` `# ordered partitions of N` `def` `CtOfNums(N):` ` ` `# Stores count the numbers in` ` ` `# ordered integer partitions` ` ` `res ` `=` `(N ` `+` `1` `) ` `*` `(` `1` `<<(N ` `-` `2` `))` ` ` `return` `round` `(res)` `# Driver code` `if` `__name__ ` `=` `=` `'__main__'` `:` ` ` `N ` `=` `3` ` ` `print` `(CtOfNums(N))` |

## C#

`// C# program to implement` `// the above approach ` `using` `System;` `class` `GFG{` ` ` `// Function to count of numbers in` `// ordered partitions of N` `static` `int` `CtOfNums(` `int` `N)` `{` ` ` ` ` `// Stores count the numbers in` ` ` `// ordered integer partitions` ` ` `double` `res = (N + 1) * (1 << (N - 2));` ` ` ` ` `return` `(` `int` `)Math.Round(res);` `}` ` ` `// Driver Code` `public` `static` `void` `Main ()` `{` ` ` `int` `N = 3;` ` ` ` ` `Console.Write(CtOfNums(N));` `}` `}` `// This code is contributed by code_hunt` |

## Javascript

`<script>` `// Javascript program to implement` `// the above approach ` `// Function to count of numbers in` `// ordered partitions of N` `function` `CtOfNums(N)` `{` ` ` ` ` `// Stores count the numbers in` ` ` `// ordered integer partitions` ` ` `var` `res = (N + 1) * (1 << (N - 2));` ` ` ` ` `return` `Math.round(res);` `}` ` ` `// Driver Code` `var` `N = 3;` `document.write(CtOfNums(N));` `</script>` |

**Output:**

8

**Time Complexity:** O(log_{2}N)**Auxiliary Space:** O(1)

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer **Complete Interview Preparation Course****.**

In case you wish to attend **live classes **with experts, please refer **DSA Live Classes for Working Professionals **and **Competitive Programming Live for Students**.