From 96bf924b9328fc8c338c09619319e259fce6e240 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:11:45 +0530 Subject: [PATCH 01/33] Add files via upload --- December 01/Day1_java_Hari7467.java | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 December 01/Day1_java_Hari7467.java diff --git a/December 01/Day1_java_Hari7467.java b/December 01/Day1_java_Hari7467.java new file mode 100644 index 0000000..11a9a50 --- /dev/null +++ b/December 01/Day1_java_Hari7467.java @@ -0,0 +1,24 @@ +public class Day1_java_Hari7467 { + + private static int find_missing_value(int race[]) + { + int start=race[0]; + for(int i=0;i Date: Tue, 21 Jan 2025 17:17:16 +0530 Subject: [PATCH 02/33] Add files via upload --- December 02/Day2_java_Hari7467.java | 46 +++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 December 02/Day2_java_Hari7467.java diff --git a/December 02/Day2_java_Hari7467.java b/December 02/Day2_java_Hari7467.java new file mode 100644 index 0000000..348eda8 --- /dev/null +++ b/December 02/Day2_java_Hari7467.java @@ -0,0 +1,46 @@ +class Day2_java_Hari7467 { + + private int[] wavePattern(int arr[]) { + for (int i = 0; i < arr.length - 1; i++) { + if (i % 2 == 0) { + + if (arr[i] > arr[i + 1]) { + swap(arr, i, i + 1); + } + } else { + + if (arr[i] < arr[i + 1]) { + swap(arr, i, i + 1); + } + } + } + return arr; + } + + + private void swap(int[] arr, int i, int j) { + int temp = arr[i]; + arr[i] = arr[j]; + arr[j] = temp; + } + + + private void show(int arr[]) { + for (int i : arr) { + System.out.print(i + " "); + } + System.out.println(); + } + + + public static void main(String[] args) { + int arr[] = {10, 5, 6, 3, 2, 20, 100, 80}; + Day2_java_Hari7467 obj = new Day2_java_Hari7467(); + + if (arr.length > 1) { + obj.show(obj.wavePattern(arr)); + } else { + System.out.println("Array should have at least two elements"); + } + } +} From 3250b9aa732dc8ac2ea590d5463167633ac99e60 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:18:23 +0530 Subject: [PATCH 03/33] Update and rename Day2_java_Hari7467.java to java_Hari7467.java --- December 02/{Day2_java_Hari7467.java => java_Hari7467.java} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename December 02/{Day2_java_Hari7467.java => java_Hari7467.java} (100%) diff --git a/December 02/Day2_java_Hari7467.java b/December 02/java_Hari7467.java similarity index 100% rename from December 02/Day2_java_Hari7467.java rename to December 02/java_Hari7467.java From cd1c874b76566cd1060aad36f00aac83a6109257 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:19:05 +0530 Subject: [PATCH 04/33] Add files via upload --- December 03/Day3_java_Hari7467.java | 38 +++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 December 03/Day3_java_Hari7467.java diff --git a/December 03/Day3_java_Hari7467.java b/December 03/Day3_java_Hari7467.java new file mode 100644 index 0000000..8a060fd --- /dev/null +++ b/December 03/Day3_java_Hari7467.java @@ -0,0 +1,38 @@ +public class Day3_java_Hari7467 { + private String square(int b,int r) + { + StringBuilder res=new StringBuilder(); + if(Math.abs(b-r)>1) return "NOT POSSIBLE"; + while (b>0 || r>0) + { + if(b>0 && b>r) + { + res.append("B");b--; + if(r>0) + { + res.append("R");r--; + } + } + else if(r>0 && r>b) + { + res.append("R");r--; + if(b>0) + { + res.append("B");b--; + } + } + else + { + res.append("B");b--; + res.append("R");r--; + } + } + return res.toString(); + } + public static void main(String[] args) { + int b=4,r=4; + Day3_java_Hari7467 obj=new Day3_java_Hari7467(); + System.out.println(obj.square( b, r)); + } + +} From 8acb0b2e87c7db26669c40a1811ab4a7e741e90a Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:20:29 +0530 Subject: [PATCH 05/33] Add files via upload --- December 04/Day4_java_Hari7467.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 December 04/Day4_java_Hari7467.java diff --git a/December 04/Day4_java_Hari7467.java b/December 04/Day4_java_Hari7467.java new file mode 100644 index 0000000..6129742 --- /dev/null +++ b/December 04/Day4_java_Hari7467.java @@ -0,0 +1,15 @@ +public class Day4_java_Hari7467 { + public static void main(String []args) + { + int a=0,b=1,c=0,n=12; + if(n<=1) c=1; + while(n>1) + { + c=a+b; + a=b; + b=c; + n--; + } + System.out.println(c); + } +} From cdeddf915bc6397ce63ce36df82d2b62b3b6a656 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:21:04 +0530 Subject: [PATCH 06/33] Add files via upload --- December 05/Day5_java_Hari7467.java | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 December 05/Day5_java_Hari7467.java diff --git a/December 05/Day5_java_Hari7467.java b/December 05/Day5_java_Hari7467.java new file mode 100644 index 0000000..6510222 --- /dev/null +++ b/December 05/Day5_java_Hari7467.java @@ -0,0 +1,28 @@ +import java.util.ArrayList; +import java.util.List; + +public class Day5_java_Hari7467 { + public int simulateSafePosition(List circle, int k) { + + int index = 0; + while (circle.size() > 1) { + index = (index + k - 1) % circle.size(); + circle.remove(index); + } + + return circle.get(0); + } + public static void main(String[] args) { + int n=3,k=2; + Day5_java_Hari7467 obj=new Day5_java_Hari7467(); + List circle=new ArrayList<>(); + for(int i=1;i<=n;i++) + { + circle.add(i); + } + System.out.println(obj.simulateSafePosition(circle,k)); + + +} +} + From ca3b178b46f3cfd3911d9fe2b7f9d2a42309ff33 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:21:31 +0530 Subject: [PATCH 07/33] Add files via upload --- December 06/Day6_java_Hari7467.java | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 December 06/Day6_java_Hari7467.java diff --git a/December 06/Day6_java_Hari7467.java b/December 06/Day6_java_Hari7467.java new file mode 100644 index 0000000..4ad230b --- /dev/null +++ b/December 06/Day6_java_Hari7467.java @@ -0,0 +1,28 @@ +public class Day6_java_Hari7467 { + static int x=0; + public static void pairs(int[][] pair,int i,int j) + { + pair[x][0]=i; + pair[x][1]=j; + x++; + } + public static void main(String[] args) { + int pair[][]=new int[100][2]; + int numbers[]={2, 4, 3, 7, 1, 5}; + int target=6; + for(int i=0;i Date: Tue, 21 Jan 2025 17:22:06 +0530 Subject: [PATCH 08/33] Add files via upload --- December 07/Day7_java_Hari7467.java | 30 +++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 December 07/Day7_java_Hari7467.java diff --git a/December 07/Day7_java_Hari7467.java b/December 07/Day7_java_Hari7467.java new file mode 100644 index 0000000..2278927 --- /dev/null +++ b/December 07/Day7_java_Hari7467.java @@ -0,0 +1,30 @@ +import java.util.ArrayList; +import java.util.List; +public class Day7_java_Hari7467 { + public static void main(String[] args) { + List> list=new ArrayList<>(); + int n=2; + for(int i=0;i()); + + for(int j=0;j<=i;j++) + { + if(j==0 || j==i) + { + list.get(i).add(1); + } + else + { + int ele=list.get(i-1).get(j-1)+list.get(i-1).get(j); + list.get(i).add(ele); + } + } + } + for(List row :list) + { + System.out.println(row); + } + + } +} From b1eec313b7e816e1a2ae0076f650031e350c2ebe Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:22:35 +0530 Subject: [PATCH 09/33] Add files via upload --- December 08/Day8_java_Hari7467.java | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 December 08/Day8_java_Hari7467.java diff --git a/December 08/Day8_java_Hari7467.java b/December 08/Day8_java_Hari7467.java new file mode 100644 index 0000000..d2fea21 --- /dev/null +++ b/December 08/Day8_java_Hari7467.java @@ -0,0 +1,24 @@ +class Day8_java_Hari7467 +{ + static int digitsum(int n) + { + int sum=0; + while(n>0) + { + int digit=n%10; + sum+=(digit*digit); + n=n/10; + } + return sum; + } + public static void main(String[] args) + { + int n=20,totalsum=0; + for(int i=1;i<=n;i++) + { + totalsum+=digitsum(i); + + } + System.out.println(totalsum); + } +} \ No newline at end of file From 1a90cbded770902b82a55ba36bc6758f0daadb79 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:23:11 +0530 Subject: [PATCH 10/33] Add files via upload --- December 09/Day9_java_Hari7467.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 December 09/Day9_java_Hari7467.java diff --git a/December 09/Day9_java_Hari7467.java b/December 09/Day9_java_Hari7467.java new file mode 100644 index 0000000..8758c21 --- /dev/null +++ b/December 09/Day9_java_Hari7467.java @@ -0,0 +1,14 @@ +import java.util.List; +import java.util.ArrayList; +import java.util.Arrays; +public class Day9_java_Hari7467 { + public static void main(String[] args) { + List returns=new ArrayList<>(Arrays.asList(2, 1, 5, 1, 0, 3, 1, 4, 1)); + int cus_count=0; + for(int frequency:returns) + { + if(frequency==1) cus_count++; + } + System.out.println(cus_count); + } +} From fc6a19a52d9b732c5f425d4cebd2789cef887bb5 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:23:39 +0530 Subject: [PATCH 11/33] Add files via upload --- December 10/Day10_java_Hari7467.java | 115 +++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 December 10/Day10_java_Hari7467.java diff --git a/December 10/Day10_java_Hari7467.java b/December 10/Day10_java_Hari7467.java new file mode 100644 index 0000000..b43af16 --- /dev/null +++ b/December 10/Day10_java_Hari7467.java @@ -0,0 +1,115 @@ +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Queue; + +public class Day10_java_Hari7467 { + static private Map> adjencymap=new HashMap<>(); + static private Map in_degree=new HashMap<>(); + static private Queue queue=new LinkedList<>(); + static private List> list=new ArrayList<>(); + static int i=0; + static boolean terminator=false; + public static void addedge(Character source,List list_destination) + { + adjencymap.putIfAbsent(source,new ArrayList<>()); + for(Character destination:list_destination) + { + adjencymap.putIfAbsent(destination,new ArrayList<>()); + adjencymap.get(source).add(destination); + } + } + public static boolean indegree() + { + for(Map.Entry> vertex:adjencymap.entrySet()) + { + in_degree.put(vertex.getKey(),vertex.getValue().size()); + if(vertex.getValue().size()==0) terminator=true; + } + return terminator; + } + public static void addqueue() + { + boolean temp=true; + for(Map.Entry depend:in_degree.entrySet()) + { + if(depend.getValue()==0) + { + if(temp) + { + list.add(new ArrayList<>()); + temp=false; + } + queue.add(depend.getKey()); + list.get(i).add(depend.getKey()); + in_degree.put(depend.getKey(),-1); + } + } + if(!temp) i++; + } + public static void reduceindegree(Character task) + { + terminator = task==null?false:true; + for(Map.Entry> popdepency:adjencymap.entrySet()) + { + for(Character depended_task:popdepency.getValue()) + { + if(depended_task.equals(task)) + { + for(Map.Entry decrement:in_degree.entrySet()) + { + if(popdepency.getKey().equals(decrement.getKey())) + { + in_degree.put(decrement.getKey(),decrement.getValue()-1); + } + } + } + } + } + } + public static boolean process() + { + if(!indegree()) + { + return false; + } + else + { + while(terminator) + { + addqueue(); + reduceindegree(queue.poll()); + } + } + return true; + } + public static void printlist() + { + for(List row :list) + { + System.out.print(row); + } + } + public static void main(String[] args) { + HashMap> tasks=new HashMap<>(); + tasks.put('A',new ArrayList<>(Arrays.asList('B'))); + tasks.put('B',new ArrayList<>(Arrays.asList('A'))); + + for(Map.Entry> task:tasks.entrySet()) + { + addedge(task.getKey(),task.getValue()); + } + if(process()) + { + printlist(); + } + else + { + System.out.println("Error: Cyclic dependency detected"); + } + + } +} From 3e12b48e06465e033100e085cc3001798503a413 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:24:15 +0530 Subject: [PATCH 12/33] Add files via upload --- December 11/Day11_java_Hari7467.java | 30 ++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 December 11/Day11_java_Hari7467.java diff --git a/December 11/Day11_java_Hari7467.java b/December 11/Day11_java_Hari7467.java new file mode 100644 index 0000000..be26547 --- /dev/null +++ b/December 11/Day11_java_Hari7467.java @@ -0,0 +1,30 @@ +public class Day11_java_Hari7467 +{ + private static boolean checkorigin(String moves) + { + int x=0,y=0; + for(int i=0;i Date: Tue, 21 Jan 2025 17:24:52 +0530 Subject: [PATCH 13/33] Add files via upload --- December 12/Day12_java_Hari7467.java | 50 ++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 December 12/Day12_java_Hari7467.java diff --git a/December 12/Day12_java_Hari7467.java b/December 12/Day12_java_Hari7467.java new file mode 100644 index 0000000..deafdf2 --- /dev/null +++ b/December 12/Day12_java_Hari7467.java @@ -0,0 +1,50 @@ +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +public class Day12_java_Hari7467 { + static void sortvip(List customers) + { + customers.sort((c1, c2) -> { + boolean isC1VIP = c1.endsWith("VIP"); + boolean isC2VIP = c2.endsWith("VIP"); + return Boolean.compare(!isC1VIP, !isC2VIP); + }); + } + public static int extract_number(String one_cuctomer) + { + Matcher matcher=Pattern.compile("\\d+").matcher(one_cuctomer); + return matcher.find()?Integer.valueOf(matcher.group()):0; + } + public static String extract_name(String one_customer) + { + return one_customer.split(" ")[0]; + } + public static void smartsystem(List customers,int tickets) + { + for(int i=0;i0){ + int ticketsserved=Math.min(ticketRequested,tickets); + customers.set(i,name + " Purchased " + ticketsserved + " tickets"); + tickets-=ticketsserved; + } + else{ + + customers.set(i, name + " was not served"); + } + } + } + public static void main(String[] args) { + List customers=new ArrayList<>(Arrays.asList("Eve 4","Diana 3 VIP","Adam 5","Frank 6 VIP")); + int tickets=10; + sortvip(customers); + smartsystem(customers,tickets); + System.out.println(customers); + } +} From 61286647dbf5df464a0810c69e630226953320eb Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:25:29 +0530 Subject: [PATCH 14/33] Add files via upload --- December 13/Day13_java_Hari7467.java | 40 ++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 December 13/Day13_java_Hari7467.java diff --git a/December 13/Day13_java_Hari7467.java b/December 13/Day13_java_Hari7467.java new file mode 100644 index 0000000..b338b05 --- /dev/null +++ b/December 13/Day13_java_Hari7467.java @@ -0,0 +1,40 @@ +import java.util.Scanner; +public class Day13_java_Hari7467 { + static Scanner sc=new Scanner(System.in); + public static int find_min_swap(int[] unique_int) + { + int min_index,min_value,swaps=0; + for(int i=0;iunique_int[j]) + { + min_index=j; + min_value=unique_int[j]; + } + } + if(min_index!=i) + { + int temp=unique_int[i]; + unique_int[i]=unique_int[min_index]; + unique_int[min_index]=temp; + swaps++; + } + } + return swaps; + } + public static void main(String[] args) { + System.out.print("Enter the number of elements: "); + int n = sc.nextInt(); + int unique_int[]=new int[n]; + System.out.print("Enter list elements:"); + for(int i=0;i Date: Tue, 21 Jan 2025 17:26:02 +0530 Subject: [PATCH 15/33] Add files via upload --- December 15/Day15_java_Hari7467.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 December 15/Day15_java_Hari7467.java diff --git a/December 15/Day15_java_Hari7467.java b/December 15/Day15_java_Hari7467.java new file mode 100644 index 0000000..1df2438 --- /dev/null +++ b/December 15/Day15_java_Hari7467.java @@ -0,0 +1,16 @@ +public class Day15_java_Hari7467 { + public static void main(String[] args) { + int w=6; + int houses[]={2, 3, 5, 2, 1}; + int gifts=0,trip=0; + for(int i=0;iw){ + trip++; + gifts=0; + } + gifts+=houses[i]; + } + trip+=(gifts>0)?1:0; + System.out.println(trip); + } +} From c9182a5c7c6c08ca6de31b053d8a375b4c75ad01 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:26:59 +0530 Subject: [PATCH 16/33] Add files via upload --- December 14/Day14_java_Hari7467.java | 87 ++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 December 14/Day14_java_Hari7467.java diff --git a/December 14/Day14_java_Hari7467.java b/December 14/Day14_java_Hari7467.java new file mode 100644 index 0000000..f5fc238 --- /dev/null +++ b/December 14/Day14_java_Hari7467.java @@ -0,0 +1,87 @@ + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Scanner; + +public class Day14_java_Hari7467 +{ + static Scanner sc=new Scanner(System.in); + public static int find_unique(List students) + { + Map unique=new HashMap<>(); + for(int stu:students) + { + unique.put(stu,unique.getOrDefault(stu, 0)+1); + } + return unique.size(); + } + public static boolean partition(List students,int K,int D) + { + Map team_1=new HashMap<>(); + Map team_2=new HashMap<>(); + Iterator iterator=students.iterator(); + while (iterator.hasNext()) + { + + int stu=iterator.next(); + if(!team_1.containsKey(stu) && team_1.size()<=K) + { + team_1.put(stu,1); + iterator.remove(); + } + else if(!team_1.containsKey(stu) && !team_2.containsKey(stu) && team_2.size()<=K) + { + team_2.put(stu,1); + iterator.remove(); + } + else if(team_1.size()>K && team_2.size()>K) + { + break; + } + } + for(int i=0;i students=new ArrayList<>(); + System.out.println("Enter T:"); + int T=sc.nextInt(); + while(i<=T) + { + System.out.println("TEST CASE : "+i); + System.out.println("Enter N K D:"); + int N=sc.nextInt(),K=sc.nextInt(),D=sc.nextInt(); + System.out.println("Enter N Students:"); + for(int j=0;j Date: Tue, 21 Jan 2025 17:27:32 +0530 Subject: [PATCH 17/33] Add files via upload --- December 16/Day16_java_Hari7467.java | 35 ++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 December 16/Day16_java_Hari7467.java diff --git a/December 16/Day16_java_Hari7467.java b/December 16/Day16_java_Hari7467.java new file mode 100644 index 0000000..16ff5ec --- /dev/null +++ b/December 16/Day16_java_Hari7467.java @@ -0,0 +1,35 @@ + +import java.util.Arrays; +public class Day16_java_Hari7467 { + public static void sort(int[] arrival,int[] depart) + { + Arrays.sort(arrival); + Arrays.sort(depart); + } + public static int find_min_platform(int[] arrival,int[] depart) + { + int platforms_in_use = 0; + int max_platforms = 0; + for(int i=1;i Date: Tue, 21 Jan 2025 17:28:04 +0530 Subject: [PATCH 18/33] Add files via upload --- December 17/Day17_java_Hari7467.java | 135 +++++++++++++++++++++++++++ 1 file changed, 135 insertions(+) create mode 100644 December 17/Day17_java_Hari7467.java diff --git a/December 17/Day17_java_Hari7467.java b/December 17/Day17_java_Hari7467.java new file mode 100644 index 0000000..786c7b1 --- /dev/null +++ b/December 17/Day17_java_Hari7467.java @@ -0,0 +1,135 @@ +import java.time.Duration; +import java.time.LocalTime; +import java.time.format.DateTimeFormatter; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Comparator; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +class Record{ + String time,id; + int t_level; + public Record(String id,String time,int t_level) + { + this.time=time;this.t_level=t_level;this.id=id; + } + @Override + public String toString() { + return "{id: " + id + ", timestamp: " + time + ", threat_level: " + t_level + "}"; + } +} +public class Day17_java_Hari7467 +{ + static Map> threadtable=new LinkedHashMap<>(); + static DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss"); + static List output=new ArrayList<>(); + private static void addrecord(String id,String time,int t_level) + { + threadtable.putIfAbsent(id, new ArrayList<>()); + threadtable.get(id).add(new Record(id,time,t_level)); + + } + private static void duplicate_alerts() + { + + LocalTime startTime = LocalTime.parse("00:00:00", formatter); + LocalTime endTime = LocalTime.parse("00:00:00", formatter); + LocalTime current_i = LocalTime.parse("00:00:00", formatter); + LocalTime current_j = LocalTime.parse("00:00:00", formatter); + for(Map.Entry> thread:threadtable.entrySet()) + { + List records = thread.getValue(); + for(int i=0;i> thread:threadtable.entrySet()) + { + List records = thread.getValue(); + int high_level=records.get(0).t_level; + for(int i=1;i> thread:threadtable.entrySet()) + { + List records = thread.getValue(); + for(int i=1;i> thread:threadtable.entrySet()) + { + output.addAll(thread.getValue()); + } + output.sort(Comparator.comparing(record -> record.time)); + } + + private static void alert_management() + { + duplicate_alerts(); + priority_update(); + Eviction(); + result(); + } + private static void display() + { + System.out.println(output); + } + public static void main(String[] args) + { + List records = Arrays.asList( + new Record("A123", "00:00:10", 3), + new Record("A123", "00:00:15", 3), + new Record("B456","00:00:20", 2), + new Record("A123","00:00:30", 5), + new Record("B456", "00:05:05", 2) + ); + for(Record record:records) + { + addrecord(record.id, record.time, record.t_level); + } + alert_management(); + display(); + } +} From d17aed70263d56038d5f5ccbd43e0720ce5c2293 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:28:38 +0530 Subject: [PATCH 19/33] Add files via upload --- December 18/Day18_java_Hari7467.java | 63 ++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 December 18/Day18_java_Hari7467.java diff --git a/December 18/Day18_java_Hari7467.java b/December 18/Day18_java_Hari7467.java new file mode 100644 index 0000000..b733c7e --- /dev/null +++ b/December 18/Day18_java_Hari7467.java @@ -0,0 +1,63 @@ +public class Day18_java_Hari7467 { + public static String longestPalindrome(String s) { + + StringBuilder str = new StringBuilder(); + str.append("^"); + for (int i = 0; i < s.length(); i++) { + str.append("#"); + str.append(s.charAt(i)); + } + str.append("#$"); + + int n = str.length(); + int[] P = new int[n]; + int center = 0, right = 0; + + for (int i = 1; i < n - 1; i++) + { + int mirror = 2 * center - i; + + if (i < right) { + P[i] = Math.min(right - i, P[mirror]); + } + + while (str.charAt(i + P[i] + 1) == str.charAt(i - P[i] - 1)) { + P[i]++; + } + + if (i + P[i] > right) { + center = i; + right = i + P[i]; + } + } + int maxLen = 0, maxCenter = 0; + for (int i = 1; i < n - 1; i++) { + if (P[i] > maxLen) { + maxLen = P[i]; + maxCenter = i; + } + } + int start = (maxCenter - maxLen) / 2; + return s.substring(start, start + maxLen); + } + + public static void main(String[] args) { + String input = "DERRREDERREDEREDR"; + String str=longestPalindrome(input); + int D=500,R=250,E=100,profit=0; + for(int i=0;i Date: Tue, 21 Jan 2025 17:29:06 +0530 Subject: [PATCH 20/33] Add files via upload --- December 19/Day19_java_Hari7467.java | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 December 19/Day19_java_Hari7467.java diff --git a/December 19/Day19_java_Hari7467.java b/December 19/Day19_java_Hari7467.java new file mode 100644 index 0000000..5e21e6c --- /dev/null +++ b/December 19/Day19_java_Hari7467.java @@ -0,0 +1,26 @@ + +public class Day19_java_Hari7467 { + static int minimum_steps=0; + private static void TOP(int N,char source,char helper,char destination) + { + if(N==1) + { + System.out.println("MOVE DISK 1 FROM "+source+" TO "+ destination); + minimum_steps++; + return; + } + TOP(N-1,source,destination,helper); + System.out.println("MOVE DISK "+N+" FROM "+source+" TO "+destination); + minimum_steps++; + TOP(N-1,helper,source,destination); + } + + public static void main(String[] args) { + + int n=3; + System.out.println("Sequence of moves:"); + TOP(n,'A','B','C'); + System.out.println("Minimum number of moves: "+minimum_steps); + + } +} From 196289bc3541000369192778470a5240317ab276 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:29:44 +0530 Subject: [PATCH 21/33] Add files via upload --- December 20/Day20_java_Hari7467.java | 32 ++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 December 20/Day20_java_Hari7467.java diff --git a/December 20/Day20_java_Hari7467.java b/December 20/Day20_java_Hari7467.java new file mode 100644 index 0000000..38854e7 --- /dev/null +++ b/December 20/Day20_java_Hari7467.java @@ -0,0 +1,32 @@ +import java.util.ArrayList; +import java.util.List; + +public class Day20_java_Hari7467 { + public static void main(String[] args) { + int[] steps = {1, 2, 3}; + int distance = 4; + List> combinations = findCombinations(steps, distance); + System.out.println(combinations.size()); + } + + public static List> findCombinations(int[] steps, int distance) { + List> result = new ArrayList<>(); + backtrack(steps, distance, new ArrayList<>(), result); + return result; + } + + private static void backtrack(int[] steps, int remaining, List path, List> result) { + if (remaining == 0) { + result.add(new ArrayList<>(path)); + return; + } + + for (int step : steps) { + if (step <= remaining) { + path.add(step); + backtrack(steps, remaining - step, path, result); + path.remove(path.size() - 1); + } + } + } +} From 5c972d1b54383751a638b60cb1f04f4c046a363d Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:30:28 +0530 Subject: [PATCH 22/33] Add files via upload --- December 21/Day21_java_Hari7467.java | 83 ++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 December 21/Day21_java_Hari7467.java diff --git a/December 21/Day21_java_Hari7467.java b/December 21/Day21_java_Hari7467.java new file mode 100644 index 0000000..9161be9 --- /dev/null +++ b/December 21/Day21_java_Hari7467.java @@ -0,0 +1,83 @@ +import java.util.LinkedList; +import java.util.Scanner; + +class Day21_java_Hari7467 { + static Scanner sc=new Scanner(System.in); + static LinkedList list1=new LinkedList<>(); + static LinkedList list2=new LinkedList<>(); + static void add_list1(int n) + { + System.out.println("ENter node values:"); + for(int i=0;i extract_list(LinkedList list,int pos) + { + LinkedList temp_list=new LinkedList<>(); + for(int i=pos-1;i list1,LinkedList list2,int diff) + { + for(int i=0;ilist2.size()) + { + int diff=list1.size()-list2.size(); + return find_intersect(list2,list1,diff); + }else{ + int diff=list2.size()-list1.size(); + return find_intersect(list1,list2,diff); + } + + } + public static void main(String[] args) { + System.out.println("ENter list1 length:"); + int l1=sc.nextInt(); + add_list1(l1); + System.out.println("ENter list2 length:"); + int l2=sc.nextInt(); + add_list2(l2); + System.out.println(); + System.out.println("Enter the position to intersect:"); + int pos=sc.nextInt(); + if(pos>0) + { + System.out.println(make_intersect(pos)); + } + else{ + System.out.println("NOT INTERSECT"); + } + } +} From 945755a51b364695cda0bf4758afce066c28cdba Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:31:00 +0530 Subject: [PATCH 23/33] Add files via upload --- December 22/Day22_java_Hari7467.java | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 December 22/Day22_java_Hari7467.java diff --git a/December 22/Day22_java_Hari7467.java b/December 22/Day22_java_Hari7467.java new file mode 100644 index 0000000..20b0db5 --- /dev/null +++ b/December 22/Day22_java_Hari7467.java @@ -0,0 +1,28 @@ +class Day22_java_Hari7467 +{ + static int find_max(int b[][]) + { + int max=1; + for(int i=0;i Date: Tue, 21 Jan 2025 17:31:41 +0530 Subject: [PATCH 24/33] Add files via upload --- December 23/Day23_java_Hari7467.java | 39 ++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 December 23/Day23_java_Hari7467.java diff --git a/December 23/Day23_java_Hari7467.java b/December 23/Day23_java_Hari7467.java new file mode 100644 index 0000000..7aa19ea --- /dev/null +++ b/December 23/Day23_java_Hari7467.java @@ -0,0 +1,39 @@ +public class Day23_java_Hari7467 { + + static int[][] grid = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; + static int N = grid.length; + + static int calculateBoundarySum() { + int sum = 0; + for (int j = 0; j < N; j++) { + sum += grid[0][j]; + } + for (int i = 1; i < N - 1; i++) { + sum += grid[i][N - 1]; + } + for (int j = N - 1; j >= 0; j--) { + sum += grid[N - 1][j]; + } + for (int i = N - 2; i > 0; i--) { + sum += grid[i][0]; + } + return sum; + } + + static int calculateDiagonalDifference() { + int d1 = 0, d2 = 0; + for (int i = 0; i < N; i++) { + d1 += grid[i][i]; + d2 += grid[i][N - i - 1]; + } + return Math.abs(d1 - d2); + } + + public static void main(String[] args) { + int boundarySum = calculateBoundarySum(); + int diagonalDifference = calculateDiagonalDifference(); + int finalResult = boundarySum + diagonalDifference; + + System.out.println("Final_Result = " + finalResult); + } +} From 51de36739a0534f76e86f6944ea6534d8de54a16 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:32:16 +0530 Subject: [PATCH 25/33] Add files via upload --- December 24/Day24_java_Hari7467.java | 64 ++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 December 24/Day24_java_Hari7467.java diff --git a/December 24/Day24_java_Hari7467.java b/December 24/Day24_java_Hari7467.java new file mode 100644 index 0000000..a35f468 --- /dev/null +++ b/December 24/Day24_java_Hari7467.java @@ -0,0 +1,64 @@ +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + + +public class Day24_java_Hari7467 { + + public static List generateUniquePermutations(String str) { + List result = new ArrayList<>(); + char[] chars = str.toCharArray(); + Arrays.sort(chars); + + boolean[] used = new boolean[chars.length]; + backtrack(chars, used, new StringBuilder(), result); + return result; + } + + private static void backtrack(char[] chars, boolean[] used, StringBuilder current, List result) { + if (current.length() == chars.length) { + result.add(current.toString()); + return; + } + + for (int i = 0; i < chars.length; i++) { + if (used[i] || (i > 0 && chars[i] == chars[i - 1] && !used[i - 1])) { + continue; + } + + used[i] = true; + current.append(chars[i]); + backtrack(chars, used, current, result); + used[i] = false; + current.deleteCharAt(current.length() - 1); + } + } + + public static void main(String[] args) { + String str = "abc"; + HashMap> map=new HashMap<>(); + List permutations = generateUniquePermutations(str); + ArrayList list=new ArrayList<>(); + Character c=permutations.get(0).charAt(0); + for (String permutation : permutations) { + if(c==permutation.charAt(0)) + { + list.add(permutation); + } + else{ + map.putIfAbsent(c,new ArrayList<>(list)); + list.clear();; + c=permutation.charAt(0); + list.add(permutation); + } + } + map.putIfAbsent(c,new ArrayList<>(list)); + for (Map.Entry> entry : map.entrySet()) { + Character key = entry.getKey(); + ArrayList value = entry.getValue(); + System.out.println(key + ": " + value); + } + } +} From dc6037eb2ba0986fec55a2cb5712386629acc471 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:32:43 +0530 Subject: [PATCH 26/33] Add files via upload --- December 25/Day25_java_Hari7467.java | 80 ++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 December 25/Day25_java_Hari7467.java diff --git a/December 25/Day25_java_Hari7467.java b/December 25/Day25_java_Hari7467.java new file mode 100644 index 0000000..4f93a6a --- /dev/null +++ b/December 25/Day25_java_Hari7467.java @@ -0,0 +1,80 @@ +import java.util.*; + +class TaskManager { + private final Map taskMap = new HashMap<>(); + + public void addTask(String task, int priority) { + taskMap.put(task, priority); + System.out.println("Task added: " + task + " with priority " + priority); + } + + public void removeTask(String task) { + if (taskMap.containsKey(task)) { + taskMap.remove(task); + System.out.println("Task removed: " + task); + } else { + System.out.println("Task not found."); + } + } + + public void displayTasks() { + if (taskMap.isEmpty()) { + System.out.println("No tasks to display."); + return; + } + + System.out.println("Tasks in Priority Order:"); + taskMap.entrySet() + .stream() + .sorted((a, b) -> b.getValue().compareTo(a.getValue())) // Sort by priority descending + .forEach(entry -> System.out.println("Task: " + entry.getKey() + ", Priority: " + entry.getValue())); + } +} + +public class Day25_java_Hari7467 { + private static final Scanner sc = new Scanner(System.in); + private static final TaskManager taskManager = new TaskManager(); + + private static void showMenu() { + System.out.println("Task Scheduler"); + System.out.println("1. Add Task"); + System.out.println("2. Remove Task"); + System.out.println("3. Display Tasks"); + System.out.println("4. Exit"); + } + + public static void main(String[] args) { + boolean running = true; + + while (running) { + showMenu(); + System.out.println("Enter your choice:"); + int choice = sc.nextInt(); + sc.nextLine(); // Consume the newline character + switch (choice) { + case 1: + System.out.println("Enter task description:"); + String task = sc.nextLine(); + System.out.println("Enter task priority:"); + int priority = sc.nextInt(); + sc.nextLine(); // Consume the newline character + taskManager.addTask(task, priority); + break; + case 2: + System.out.println("Enter task to remove:"); + String taskToRemove = sc.nextLine(); + taskManager.removeTask(taskToRemove); + break; + case 3: + taskManager.displayTasks(); + break; + case 4: + running = false; + break; + default: + System.out.println("Please enter a valid option."); + } + } + sc.close(); + } +} From 411968bbad467e7d91fd39d3ef58e20e7176cab1 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:33:14 +0530 Subject: [PATCH 27/33] Add files via upload --- December 26/Day26_java_Hari7467.java | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 December 26/Day26_java_Hari7467.java diff --git a/December 26/Day26_java_Hari7467.java b/December 26/Day26_java_Hari7467.java new file mode 100644 index 0000000..4c79033 --- /dev/null +++ b/December 26/Day26_java_Hari7467.java @@ -0,0 +1,24 @@ +public class Day26_java_Hari7467 +{ + public static boolean canJump(int[] nums) { + return canJumpFromIndex(nums, 0); + } + private static boolean canJumpFromIndex(int[] nums, int index) { + if (index >= nums.length - 1) { + return true; + } + int maxJump = index + nums[index]; + for (int nextIndex = index + 1; nextIndex <= maxJump; nextIndex++) { + if (canJumpFromIndex(nums, nextIndex)) { + return true; + } + } + return false; + } + + public static void main(String[] args) { + int[] nums = {3, 2, 1, 0, 4}; + System.out.println(canJump(nums)); + } +} + From 004854a00dbb5d2045d19bd4b0d16bc85b85d3d2 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:34:03 +0530 Subject: [PATCH 28/33] Add files via upload --- December 27/Day27_java_Hari7467.java | 35 ++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 December 27/Day27_java_Hari7467.java diff --git a/December 27/Day27_java_Hari7467.java b/December 27/Day27_java_Hari7467.java new file mode 100644 index 0000000..32693c5 --- /dev/null +++ b/December 27/Day27_java_Hari7467.java @@ -0,0 +1,35 @@ +public class Day27_java_Hari7467 { + public static void main(String[] args) { + int height[]={4,2,0,3,2,5}; + int len=height.length,max=0,trap_water=0; + int max_left[]=new int[len]; + int max_right[]=new int[len]; + for(int i=0;iheight[i]) + { + max_right[i]=max; + + }else{ + max=height[i]; + max_right[i]=max; + } + } + max=0; + for(int i=len-1;i>=0;i--) + { + if(max>height[i]) + { + max_left[i]=max; + }else{ + max=height[i]; + max_left[i]=max; + } + } + for(int i=0;i Date: Tue, 21 Jan 2025 17:34:36 +0530 Subject: [PATCH 29/33] Add files via upload --- December 28/Day28_java_Hari7467.java | 34 ++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 December 28/Day28_java_Hari7467.java diff --git a/December 28/Day28_java_Hari7467.java b/December 28/Day28_java_Hari7467.java new file mode 100644 index 0000000..dc39517 --- /dev/null +++ b/December 28/Day28_java_Hari7467.java @@ -0,0 +1,34 @@ +import java.util.ArrayList; +import java.util.Arrays; +import java.util.SortedSet; +import java.util.TreeSet; + +public class Day28_java_Hari7467 { + public static void main(String[] args) { + Integer book[]={1, 2, 3, 6, 2, 3, 4, 7, 8}; + int size=4; + ArrayList list=new ArrayList<>(); + SortedSet set=new TreeSet<>(); + Arrays.sort(book); + list.addAll(Arrays.asList(book)); + while(list.size()>=size) + { + for(int i=0;i Date: Tue, 21 Jan 2025 17:35:18 +0530 Subject: [PATCH 30/33] Add files via upload --- December 29/Day29_java_Hari7467.java | 72 ++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 December 29/Day29_java_Hari7467.java diff --git a/December 29/Day29_java_Hari7467.java b/December 29/Day29_java_Hari7467.java new file mode 100644 index 0000000..7f5a616 --- /dev/null +++ b/December 29/Day29_java_Hari7467.java @@ -0,0 +1,72 @@ +import java.util.*; +public class Day29_java_Hari7467 { + static Scanner sc = new Scanner(System.in); + static class Node implements Comparable { + int x, y, cost; + + Node(int x, int y, int cost) { + this.x = x; + this.y = y; + this.cost = cost; + } + @Override + public int compareTo(Node other) { + return Integer.compare(this.cost, other.cost); + } + } + public static int minCostWithPortals(int N, int M, int P, List portals) { + PriorityQueue pq = new PriorityQueue<>(); + pq.offer(new Node(1, 1, 0)); + int[][] dist = new int[N + 1][M + 1]; + for (int i = 1; i <= N; i++) { + Arrays.fill(dist[i], Integer.MAX_VALUE); + } + dist[1][1] = 0; + Map> portalMap = new HashMap<>(); + for (int[] portal : portals) { + int x1 = portal[0], y1 = portal[1], x2 = portal[2], y2 = portal[3], w = portal[4]; + portalMap.computeIfAbsent(x1 + "," + y1, k -> new ArrayList<>()).add(new int[]{x2, y2, w}); + portalMap.computeIfAbsent(x2 + "," + y2, k -> new ArrayList<>()).add(new int[]{x1, y1, w}); + } + while (!pq.isEmpty()) { + Node current = pq.poll(); + int x = current.x, y = current.y, cost = current.cost; + if (x == N && y == M) { + return cost; + } + String key = x + "," + y; + if (portalMap.containsKey(key)) { + for (int[] portal : portalMap.get(key)) { + int nx = portal[0], ny = portal[1], portalCost = portal[2]; + int newCost = cost + portalCost; + if (newCost < dist[nx][ny]) { + dist[nx][ny] = newCost; + pq.offer(new Node(nx, ny, newCost)); + } + } + } + } + return -1; + } + + public static void main(String[] args) { + System.out.println("Enter N (rows) and M (columns):"); + int N = sc.nextInt(), M = sc.nextInt(); + System.out.println("Enter P (number of portals):"); + int P = sc.nextInt(); + List portals = new ArrayList<>(); + System.out.println("Enter portal details (x1 y1 x2 y2 W):"); + for (int i = 0; i < P; i++) { + int x1 = sc.nextInt(), y1 = sc.nextInt(); + int x2 = sc.nextInt(), y2 = sc.nextInt(); + int w = sc.nextInt(); + portals.add(new int[]{x1, y1, x2, y2, w}); + } + int result = minCostWithPortals(N, M, P, portals); + if (result == -1) { + System.out.println("No valid path exists."); + } else { + System.out.println("Minimum cost to reach (" + N + ", " + M + "): " + result); + } + } +} From 0964e9e970787c3b9ffa94c1061fa287cdff56a3 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:35:51 +0530 Subject: [PATCH 31/33] Add files via upload --- December 30/Day30_java_Hari7467.java | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 December 30/Day30_java_Hari7467.java diff --git a/December 30/Day30_java_Hari7467.java b/December 30/Day30_java_Hari7467.java new file mode 100644 index 0000000..8c13b3b --- /dev/null +++ b/December 30/Day30_java_Hari7467.java @@ -0,0 +1,27 @@ +public class Day30_java_Hari7467 { + static int minMoves(int eggs, int floors) { + int[][] dp = new int[eggs + 1][floors + 1]; + + for (int i = 1; i <= floors; i++) { + dp[1][i] = i; + } + for (int k = 2; k <= eggs; k++) { + for (int n = 1; n <= floors; n++) { + dp[k][n] = Integer.MAX_VALUE; + + for (int x = 1; x <= n; x++) { + int res = 1 + Math.max(dp[k-1][x-1], dp[k][n-x]); + dp[k][n] = Math.min(dp[k][n], res); + } + } + } + return dp[eggs][floors]; + } + public static void main(String[] args) { + int eggs = 3; + int floors = 14; + + System.out.println("Minimum moves required: " + minMoves(eggs, floors)); + } + } + \ No newline at end of file From 28c4725eab8686ebd604e2709ab0b2343f7575d4 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:36:46 +0530 Subject: [PATCH 32/33] Add files via upload --- December 31/Day31_java_Hari7467.java | 37 ++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 December 31/Day31_java_Hari7467.java diff --git a/December 31/Day31_java_Hari7467.java b/December 31/Day31_java_Hari7467.java new file mode 100644 index 0000000..38f109e --- /dev/null +++ b/December 31/Day31_java_Hari7467.java @@ -0,0 +1,37 @@ +public class Day31_java_Hari7467 { + public static void main(String[] args) { + float[][] velocities = { + {3, 4, 0}, + {-6, 8, 0}, + {5, 12, 0} + }; + System.out.println("Normalized velocity vectors:"); + for (float[] velocity : velocities) { + float[] normalized = normalizeVelocity(velocity); + System.out.printf("Normalized: %.6f %.6f %.6f%n", normalized[0], normalized[1], normalized[2]); + } + } + + public static float[] normalizeVelocity(float[] velocity) { + float squaredMagnitude = velocity[0] * velocity[0] + + velocity[1] * velocity[1] + + velocity[2] * velocity[2]; + + float reciprocalSqrt = fastInverseSqrt(squaredMagnitude); + + return new float[] { + velocity[0] * reciprocalSqrt, + velocity[1] * reciprocalSqrt, + velocity[2] * reciprocalSqrt + }; + } + public static float fastInverseSqrt(float number) { + int bits = Float.floatToIntBits(number); + int magic = 0x5f3759df; + int approxBits = magic - (bits >> 1); + float approx = Float.intBitsToFloat(approxBits); + approx = approx * (1.5f - 0.5f * number * approx * approx); + return approx; + } + } + \ No newline at end of file From c4ecf5ffa02d0bf0e6ded9413d39d891c4c43dc4 Mon Sep 17 00:00:00 2001 From: Hari7467 Date: Tue, 21 Jan 2025 17:38:31 +0530 Subject: [PATCH 33/33] Update and rename java_Hari7467.java to Day2_java_Hari7467.java --- December 02/{java_Hari7467.java => Day2_java_Hari7467.java} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename December 02/{java_Hari7467.java => Day2_java_Hari7467.java} (100%) diff --git a/December 02/java_Hari7467.java b/December 02/Day2_java_Hari7467.java similarity index 100% rename from December 02/java_Hari7467.java rename to December 02/Day2_java_Hari7467.java