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:
Base64 encoding và decoding trong Java 8
Lớp lồng nhau trong java (Java inner class)
Spring Security Basic Authentication
Deploy a Spring Boot App to Azure
Guide to Java Instrumentation
Functional Interfaces in Java 8
Java Streams vs Vavr Streams
Anonymous Classes in Java
Dynamic Proxies in Java
Guide to the Volatile Keyword in Java
Java Program to Perform Naive String Matching
Spring MVC Custom Validation
So sánh ArrayList và LinkedList trong Java
An Intro to Spring Cloud Zookeeper
String Initialization in Java
Java Program to Implement Bucket Sort
Java Program to Perform Uniform Binary Search
Java Program to Find the Shortest Path from Source Vertex to All Other Vertices in Linear Time
Các kiểu dữ liệu trong java
Dockerizing a Spring Boot Application
Spring MVC Setup with Kotlin
Java Program to Find Transpose of a Graph Matrix
Java Program to subtract two large numbers using Linked Lists
Introduction to the Java ArrayDeque
Spring Boot - Servlet Filter
Control Structures in Java
Java Program to Find Nearest Neighbor for Static Data Set
Java Program to Implement JobStateReasons API
Introduction to Spring Cloud Netflix – Eureka
Java Program to Implement Queue
Java Program to Find Path Between Two Nodes in a Graph
Java Program to Check the Connectivity of Graph Using DFS