This is a java program to generate and print all the partitions of a number such that when those partition elements are added results in the number itself, plus the partition should be unique. We start with the number, number minus one is the next partition and so on, till all one’s are the last partition where we stop.
Here is the source code of the Java Program to Perform integer Partition for a Specific Case. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a java program to perform integer partition such that every partition is unique
import java.util.Scanner;
public class Integer_Partition
{
public static void print(int[]p, int n)
{
for(int i=0; i<n; i++)
System.out.print(p[i]+" ");
System.out.println();
}
public static void generateUniquePartition(int n)
{
int []p = new int[n];
int k = 0;
p[k] = n;
while(true)
{
print(p, k+1);
int rem_value = 0;
while(k >= 0 && p[k] == 1)
{
rem_value += p[k];
k--;
}
if(k < 0)
return;
p[k]--;
rem_value++;
while(rem_value > p[k])
{
p[k+1] = p[k];
rem_value -= p[k];
k++;
}
p[k+1] = rem_value;
k++;
}
}
public static void main(String args[])
{
System.out.println("Partitioning of a given Integer such that every partition is unique");
System.out.println("Enter the number:");
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
generateUniquePartition(n);
sc.close();
}
}
Output:
$ javac Integer_Partition.java $ java Integer_Partition Partitioning of a given Integer such that every partition is unique Enter the number: 6 6 5 1 4 2 4 1 1 3 3 3 2 1 3 1 1 1 2 2 2 2 2 1 1 2 1 1 1 1 1 1 1 1 1 1
Related posts:
Hướng dẫn sử dụng Lớp FilePermission trong java
Java Program to Implement Expression Tree
Java Program to Compute Cross Product of Two Vectors
Java Program to Implement Sparse Array
Jackson – Unmarshall to Collection/Array
How to Define a Spring Boot Filter?
Java Program to Implement Sorted Doubly Linked List
Java Program to Find a Good Feedback Vertex Set
Java Program to Implement Red Black Tree
Java Program to Implement CopyOnWriteArraySet API
The Order of Tests in JUnit
Java Program to Find the Mode in a Data Set
Notify User of Login From New Device or Location
Quick Guide to Spring Bean Scopes
Apache Camel with Spring Boot
Java Program to Find ith Largest Number from a Given List Using Order-Statistic Algorithm
Java Program to Check if any Graph is Possible to be Constructed for a Given Degree Sequence
Java Program to Implement AA Tree
Getting Started with Stream Processing with Spring Cloud Data Flow
Quick Guide to @RestClientTest in Spring Boot
Java – Create a File
Java Program to Implement Binary Heap
How to Return 404 with Spring WebFlux
Assertions in JUnit 4 and JUnit 5
Check if a String is a Palindrome in Java
Kết hợp Java Reflection và Java Annotations
Hướng dẫn sử dụng luồng vào ra ký tự trong Java
MyBatis with Spring
Giới thiệu Google Guice – Binding
Spring Boot Configuration with Jasypt
Hướng dẫn Java Design Pattern – Intercepting Filter
Java Program to Implement Skip List