Skip to main content

Posts

Showing posts with the label Competitive Programming Level 1

Knapsack Problem Java

Question You are given a number n, representing the count of items. You are given n numbers, representing the values of n items. You are given n numbers, representing the weights of n items. You are given a number "cap", which is the capacity of a bag you've. You are required to calculate and print the maximum value that can be created in the bag without overflowing its capacity. Note -> Each item can be taken 0 or 1 number of times. You are not allowed to put the same item again and again. Input Format A number n v1 v2 .. n number of elements w1 w2 .. n number of elements A number cap Output Format A number representing the maximum value that can be created in the bag without overflowing its capacity Constraints 1 <= n <= 20 0 <= v1, v2, .. n elements <= 50 0 < w1, w2, .. n elements <= 10 0 < cap <= 10 Sample Input 5 15 14 10 45 30 2 5 1 3 4 7 Sample Output 75 Program import java.io.*;

Fibonacci Java

Question You are given a number n. You are required to print the nth element of the Fibonacci sequence. Note -> Notice precisely how we have defined the Fibonacci sequence 0th element -> 0 1st element -> 1 2nd element -> 1 3rd element -> 2 4th element -> 3 5th element -> 5 6th element -> 8 Input Format A number n Constraints 0 <= n <= 45 Sample Input 10 Sample Output 55 Program import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws Exception { // write your code here Scanner scn = new Scanner(System.in); int n = scn.nextInt(); int ans = fib(n, new int[n + 1]); System.out.println(ans); } public static int fib(int n, int[] qb){ if(n == 0 || n == 1){ return n; } if(qb[n] != 0){ return qb[n]; } int fib1 = fib(n - 1, qb);

Merge Sort In Java

Question You are given an array(arr) of integers. You have to sort the given array in increasing order using merge sort. Input Format An Integer n arr1 arr2.. n integers Constraints 1 <= N <= 100000 -10^9 <= arr[i] <= 10^9 Sample Input 5 7 -2 4 1 3 Sample Output Merging these two arrays left array -> 7 right array -> -2 Merging these two arrays left array -> -2 7 right array -> 4 Merging these two arrays left array -> 1 right array -> 3 Merging these two arrays left array -> -2 4 7 right array -> 1 3 Sorted Array -> -2 1 3 4 7 Program import java.io.*; import java.util.*; public class Main { public static int[] mergeSort(int[] arr, int lo, int hi) { //write your code here if(lo == hi){ int[] ba = new int[1]; ba[0] = arr[lo]; return ba; } int mid = (lo + hi) / 2; int[] fsh = mergeSort(arr, lo, mid); int[] ssh = mergeSort(arr, mid + 1, hi); int[]

Quick Sort In Java

Question You are given an array(arr) of integers. You have to sort the given array in increasing order using quicksort. Input Format An Integer n arr1 arr2.. n integers Constraints 1 <= N <= 100000 -10^9 <= arr[i] <= 10^9 Sample Input 5 7 -2 4 1 3 Sample Output pivot -> 3 Swapping -2 and 7 Swapping 1 and 7 Swapping 3 and 4 pivot index -> 2 pivot -> 1 Swapping -2 and -2 Swapping 1 and 1 pivot index -> 1 pivot -> -2 Swapping -2 and -2 pivot index -> 0 pivot -> 4 Swapping 4 and 7 pivot index -> 3 pivot -> 7 Swapping 7 and 7 pivot index -> 4 -2 1 3 4 7 Program import java.io.*; import java.util.*; public class Main { public static void quickSort(int[] arr, int lo, int hi) { //write your code here if(lo > hi){ return; } int pivot = arr[hi]; int pidex = partition(arr, pivot, lo, hi); quickSort(arr, lo, pidex - 1); quickSort(arr, pidex + 1, hi); } public

Count Sort In Java

Question You are given an array(arr) of integers. You have to sort the given array in increasing order using count sort. Input Format An Integer n arr1 arr2.. n integers Constraints 1 <= N <= 10000 0 <= arr[i] <= 10^8 Sample Input 5 7 -2 4 1 3 Sample Output -2 1 3 4 7 Program import java.io.*; import java.util.*; public class Main { public static void countSort(int[] arr, int min, int max) { //write your code here int[] frqa = new int[max - min + 1]; for(int i = 0; i < arr.length; i++){ int val = arr[i]; int pos = val - min; frqa[pos]++; } for(int i = 1; i < frqa.length; i++){ frqa[i] = frqa[i] + frqa[i - 1]; } int[] ans = new int[arr.length]; for(int i = arr.length - 1; i >= 0; i--){ int val = arr[i]; int pos = val - min; int idx = frqa[pos] - 1; ans[idx] = val; frqa[pos]--; } for(int i = 0; i < arr.length;

Radix Sort In Java

Question You are given an array(arr) of integers. You have to sort the given array in increasing order using radix sort. Input Format An Integer n arr1 arr2.. n integers Constraints 1 <= N <= 10000 0 <= arr[i] <= 10^8 Sample Input 5 7 2 4 1 3 Sample Output After sorting on 1 place -> 1 2 3 4 7 1 2 3 4 7 Program import java.io.*; import java.util.*; public class Main { public static void radixSort(int[] arr) { // write code here int max = Integer.MIN_VALUE; for(int val : arr){ if(val > max){ max = val; } } int exp = 1; while(exp <= max){ countSort(arr, exp); exp = exp * 10; } } public static void countSort(int[] arr, int exp) { // write code here int[] frqa = new int[10]; for(int i = 0; i < arr.length; i++){ int val = arr[i] / exp % 10; i

Prime Number Program in Java: Print All Prime Numbers

Question You've to print all prime numbers between a range. Take as input "low", the lower limit of the range. Take as input "high", the higher limit of the range. For the range print all the primes numbers between low and high (both included). Input Format low high Output Format n1 n2 .. all primes between low and high (both included) Constraints 2 <= low < high < 10 ^ 6 Sample Input 6 24 Sample Output 7 11 13 17 19 23 Program import java.util.*; public class Main{ public static void main(String[] args) { // write your code here Scanner scn = new Scanner(System.in); int low = scn.nextInt(); int high = scn.nextInt(); for (int i = low; i <= high; i++){ int count = 0; //try to divide n and incrtease count for (int div = 2; div * div <= i; div++){ if ( i % div == 0){ count++;

Prime Number Program in Java: Is Number Prime Or Not

Question You've to check whether a given number is prime or not. Take a number "t" as input representing a count of input numbers to be tested. Take a number "n" as input "t" number of times. For each input value of n, print "prime" if the number is prime and "not prime" otherwise. Input Format A number t A number n A number n .. t number of times Output Format prime not prime not prime .. t number of times Constraints 1 <= t <= 10000 2 <= n < 10^9 Sample Input 5 19 21 33 37 121 Sample Output prime not prime not prime prime not prime Program import java.util.*; public class Main{ public static void main(String[] args) { Scanner scn = new Scanner(System.in); int t = scn.nextInt(); for(int i=0;i<t;i++){ int n = scn.nextInt(); int count = 0; for(int div=2;div*div<=n; div++){ if (n % div == 0){