HackerRank Solutions
698 subscribers
1 file
6 links
Hey guys subscribe our channel
Here all hackerrank solutions are available here so let's do follow button
Thanks
Download Telegram
Hey,we are working for those students who are unable to create their logic behind the solution. Purpose of this website is to explain the solution of Hacker rank problem.
This website will definitely help for beginners.
Check out the website link is given below👇that is free of cost and all Hackerrank solutions Available Here this is the best opportunity for students
https://javahackerranksolutions.blogspot.com
HackerRank Solutions pinned «Hey,we are working for those students who are unable to create their logic behind the solution. Purpose of this website is to explain the solution of Hacker rank problem. This website will definitely help for beginners. Check out the website link is given…»
Largest prime factor in Project Euler



import java.io.*;

import java.util.*;

import java.text.*;

import java.math.*;

import java.util.regex.*;

/*****Aakash Vikrant

**Kiet Group of Institutions**/

public class Solution 

{

    public static void main(String[] args) 

      {

        Scanner in = new Scanner(System.in);

        int t = in.nextInt();

        for(int a0 = 0; a0 < t; a0++)

        {

            long n = in.nextLong();

            long res = primeFactors(n);

            System.out.println(res);

        }

    }

  public static long primeFactors(long n)

       {

         while (n%2==0)

        {

            n /= 2;

        }

        int res=0;

        for (int i = 3; i <= Math.sqrt(n); i+= 2)

           {

            while (n%i == 0)

            {    

                n /= i;

                res = i;

            }

        }

        if (n > 2)

        {

            return n;

        }

        else

        {

            return res;

        }

   }

}
Post Transition in C






#include <stdio.h>
#include <stdlib.h>
#define MAX_STRING_LENGTH 6
/*****Aakash Vikrant
**Kiet Group of Institutions**/
struct package
{
    char* id;
    int weight;
};
typedef struct package package;
struct post_office
{
    int min_weight;
    int max_weight;
    package* packages;
    int packages_count;
};
typedef struct post_office post_office;
struct town
{
    char* name;
    post_office* offices;
    int offices_count;
};
typedef struct town town;
void print_all_packages(town t) 
{
    printf("%s:\n", t.name);
    for (int i = 0; i < t.offices_count; i++) 
  {
        printf("\t%d:\n", i);
        for (int j = 0; j < t.offices[i].packages_count; j++) 
     {
            printf("\t\t%s\n", t.offices[i].packages[j].id);

  }

    }
}
int is_movable(post_office po, int w) 
{
    if (w >= po.min_weight && w <= po.max_weight)
        return 1;
    else
        return 0;
}
void send_all_acceptable_packages(town *s, int si, town *t, int ti) 
{
    int i, j;
    i = 0;
    while (i < s->offices[si].packages_count) 
   {
        if (is_movable(t->offices[ti], s->offices[si].packages[i].weight)) 
    {
            int *tp = &t->offices[ti].packages_count;
            t->offices[ti].packages = (package *) realloc(t->offices[ti].packages, (*tp+1) * sizeof(package));
            t->offices[ti].packages[(*tp)++] = s->offices[si].packages[i];
            int *sp = &s->offices[si].packages_count;
            for (j = i; j < *sp-1; j++) 
           {
                s->offices[si].packages[j] = s->offices[si].packages[j+1];
            }
            s->offices[si].packages = (package *) realloc(s->offices[si].packages, (*sp-1) * sizeof(package));
            (*sp)--;
        }
        else i++;
    }
}
town town_with_most_packages(town *towns, int towns_count) 
{
    int max = 0 , r = 0, i;
    for (i = 0; i < towns_count; i++) 
   {
        int packages_count = 0;
        for (int j = 0; j < towns[i].offices_count; j++) 
       {
            packages_count += towns[i].offices[j].packages_count;
        }
        if (packages_count > max) 
       {
            max  = packages_count;
            r = i;
        }
    }
    return towns[r];
}
town *find_town(town *towns, int towns_count, char *name) 
{
    for (int i = 0; i < towns_count; i++) 
   {
        if (!strcmp(name, towns[i].name))
            return &towns[i];
    }
    return NULL;
}
int main()
{
    int towns_count;
    scanf("%d", &towns_count);
    town* towns = malloc(sizeof(town)*towns_count);
    for (int i = 0; i < towns_count; i++) 
  {
        towns[i].name = malloc(sizeof(char) * MAX_STRING_LENGTH);
        scanf("%s", towns[i].name);
        scanf("%d", &towns[i].offices_count);
        towns[i].offices = malloc(sizeof(post_office)*towns[i].offices_count);
        for (int j = 0; j < towns[i].offices_count; j++) 
   {
            scanf("%d%d%d", &towns[i].offices[j].packages_count, &towns[i].offices[j].min_weight, &towns[i].offices[j].max_weight);
            towns[i].offices[j].packages = malloc(sizeof(package)*towns[i].offices[j].packages_count);
            for (int k = 0; k < towns[i].offices[j].packages_count; k++) 
            {
                towns[i].offices[j].packages[k].id = malloc(sizeof(char) * MAX_STRING_LENGTH);
                scanf("%s", towns[i].offices[j].packages[k].id);
                scanf("%d", &towns[i].offices[j].packages[k].weight);
            }
        }
    }
    int queries;
    scanf("%d", &queries);
    char town_name[MAX_STRING_LENGTH];
    while (queries--) 
{
        int type;
        scanf("%d", &type);
        switch (type) 
  {
        case 1:
            scanf("%s", town_name);
            town* t = find_town(towns, towns_count, town_name);
            print_all_packages(*t);
            break;
        case 2:
            scanf("%s", town_name);
            town* source = find_town(towns, towns_count, town_name);
            int source_index;
            scanf("%d", &source_index);
            scanf("%s", town_name);
            town* target = find_town(towns, towns_count, town_name);
   
        int target_index;
            scanf("%d", &target_index);
            send_all_acceptable_packages(source, source_index, target, target_index);
            break;
        case 3:
            printf("Town with the most number of packages is %s\n", town_with_most_packages(towns, towns_count).name);
            break;
        }
    }
    return 0;
}