DAAPrograms
DAAPrograms
import java.util.Scanner;
int n = A.length;
if (n == 1) {
return C;
joinMatrix(C11, C, 0, 0);
joinMatrix(C12, C, 0, n / 2);
joinMatrix(C21, C, n / 2, 0);
joinMatrix(C22, C, n / 2, n / 2);
return C;
int n = A.length;
int[][] C = new int[n][n];
return C;
int n = A.length;
return C;
C[i1][j1] = P[i2][j2];
System.out.println();
int n = scanner.nextInt();
// Input matrices
A[i][j] = scanner.nextInt();
}
System.out.println("Enter the elements of matrix B:");
B[i][j] = scanner.nextInt();
System.out.println("Resultant matrix:");
printMatrix(result);
scanner.close();
Part B
5. Write program to implement greedy algorithm for job sequencing with deadlines
import java.util.*;
int n=sc.nextInt();
String job[]=new String[n];
for(int i=0;i<n;i++)
job[i]=sc.next();
profit[i]=sc.nextInt();
deadline[i]=sc.nextInt();
System.out.println("--Arranged Order--");
System.out.print("Jobs: ");
for(int i=0;i<n;i++)
System.out.print(job[i]+" ");
System.out.println();
System.out.print("Profit: ");
for(int i=0;i<n;i++)
System.out.print(profit[i]+" ");
System.out.println();
System.out.print("DeadLine:");
for(int i=0;i<n;i++)
System.out.print(deadline[i]+" ");
for(int i=0;i<n-1;i++)
{
for(int j=i+1;j<n;j++)
if(profit[i]<profit[j])
int temp=profit[i];
profit[i]=profit[j];
profit[j]=temp;
temp=deadline[i];
deadline[i]=deadline[j];
deadline[j]=temp;
String temp1=job[i];
job[i]=job[j];
job[j]=temp1;
System.out.println();
System.out.println("--Sorted Order--");
System.out.print("Jobs: ");
for(int i=0;i<n;i++)
System.out.print(job[i]+" ");
System.out.println();
System.out.print("Profit: ");
for(int i=0;i<n;i++)
System.out.print(profit[i]+" ");
}
System.out.println();
System.out.print("DeadLine:");
for(int i=0;i<n;i++)
System.out.print(deadline[i]+" ");
System.out.println();
int max=deadline[0];
for(int i=0;i<n;i++)
if(deadline[i]>max)
max=deadline[i];
int totalprofit=0;
for(int i=0;i<n;i++)
int val=deadline[i];
val=val-1;
if(slot[val]==null )
slot[val]=job[i];
totalprofit+=profit[i];
else
while(val!=-1)
{
if(slot[val]==null)
slot[val]=job[i];
totalprofit+=profit[i];
break;
val=val-1;
for(int i=0;i<max;i++)
System.out.print("-->"+slot[i]);
System.out.println();