Q62 Minimum Cost To Connect Sticks
Sat Feb 04 2023 06:21:12 GMT+0000 (Coordinated Universal Time)
Saved by
@Ayush_dabas07
import java.io.*;
import java.util.*;
public class Main {
public static int connectSticks(int[] sticks) {
//add all sticks in a priority queue
Queue<Integer> q = new PriorityQueue<>();
for(int val : sticks)
q.add(val);
int ans = 0;
while(q.size()!=1){
int cost = q.remove()+q.remove();
ans += cost;
q.add(cost);
}
return ans;
}
public static void main(String[] args) {
Scanner scn = new Scanner(System.in);
int n = scn.nextInt();
int[] sticks = new int[n];
for (int i = 0; i < sticks.length; i++) {
sticks[i] = scn.nextInt();
}
System.out.println(connectSticks(sticks));
}
}
content_copyCOPY
https://www.pepcoding.com/resources/data-structures-and-algorithms-in-java-levelup/hashmap-and-heaps/minimum-cost-to-connect-sticks/ojquestion
Comments