Skip to main content

Sim_Match_And_Sort

 Problem Statement

Create class Sim with below attributes: id - int company - String balance - int ratePerSecond - double circle - String

Create class Solution and implement static method "matchAndSort" in the Solution class. This method will take array of Sim objects, search_circle String and search_rate double as parameters. And will return another Sim array where the search_circle matches with the circle parameter of the original Sim array and the search_rate double is greater than the original array of Sim object's ratePerSecond attribute which is also sorted by means of balance attribute in descending order.

Write necessary getters and setters.

Before calling "matchAndSort" method in the main method, read values for four Sim objects referring the attributes in above sequence along with a String search_circle and a double search_rate. Then call the "matchAndSort" method and write logic in main method to print the id's of the result obtained.
Input

1
jio
430
1.32
mumbai
2
idea
320
2.26
mumbai
3
airtel
500
2.54
mumbai
4
vodafone
640
3.21
mumbai
mumbai
3.4

Output

4
3
1
2


code:

 

import java.util.Arrays;
import java.util.Scanner;

class Solution {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        Sim[] sim = new Sim[4];
        for(int i = 0;i < 4;i++){
            sim[i] = new Sim(sc.nextInt(),sc.next(),sc.nextInt(),sc.nextDouble(),sc.next());
        }
        String search_circle=sc.next();
        double search_rate=sc.nextDouble();
        sc.nextLine();
        sc.close();
        Sim[] result=matchAndSort(sim,search_circle,search_rate);
        for(int i=0;i<result.length;i++){
            System.out.println(result[i].getId());
        }
    }

    public static Sim[] matchAndSort(Sim[] sim,String search_circle,double search_rate){
        Sim[] refined = new Sim[0];
        for(int i=0;i<sim.length;i++){
            if((sim[i].getCircle()).equals(search_circle)&&(sim[i].getRatePerSecond()<search_rate)){
                refined=Arrays.copyOf(refined, refined.length+1);
                refined[refined.length-1]=sim[i];
            }
        }
        for(int i=0;i<refined.length-1;i++){
            for(int j=0;j<refined.length-i-1;j++){
                if(refined[j].getBalance()<refined[j+1].getBalance()){
                     Sim temp=refined[j];
                     refined[j]=refined[j+1];
                     refined[j+1]=temp;
                }

            }
        }
        return refined;
    }
}

class Sim{
    int id;
    String company;
    int balance;
    double ratePerSecond;
    String circle;
    String getCircle(){
        return circle;
    }
    double getRatePerSecond(){
        return ratePerSecond;
    }
    int getBalance(){
        return balance;
    }
    int getId(){
        return id;
    }
    Sim(int id,String company,int balance,double ratePerSecond,String circle){
        this.id=id;
        this.company=company;
        this.balance=balance;
        this.ratePerSecond=ratePerSecond;
        this.circle=circle;
    }
}


Comments

Popular posts from this blog

How to Introduce Yourself to project team and client when you join a new project as fresher in service based company ?

Question:     How to Introduce Yourself to project team /client  when you join a new project as fresher ? Answer:  Hii Everyone,    Today I will be talking about how we can introduce ourselves to a team  when we join a new project in any servicebased company as a fresher.     After I completed my Engineering ,I got placed into TCS.I got allocated  into a project.I introduced myself to a team.So I will be telling about how   exactly I introduced myself to the team.The impressive introduction is  necessary if you want team members to treat you better in this work from  home period.If you fail to impress team members ,If your introduction is not  impressive ,then probably your team members will ignore you.    Before I tell you about how exactly I introduced myself,I would like  to talk about the points that you should remember before giving your  introduction. .start your introduction with Hii Ev...

Automating Infrastructure on Google Cloud with Terraform: Challenge Lab

As more and more organizations move to the cloud, the need for powerful infrastructure automation tools has never been greater. That's where Terraform comes in, a cutting-edge tool that allows you to automate the deployment, management, and scaling of your infrastructure with ease. With Terraform, you can define your entire infrastructure as code, making it easy to maintain, version, and reproduce. Whether you're deploying infrastructure to AWS, Google Cloud, or another cloud provider, Terraform provides a powerful and flexible platform for automating your workflows. In this blog post, we'll take a look at how to automate infrastructure on google cloud with terraform. Task A. Create the configuration files  Task B. Import infrastructure  Task C.Configure a remote backend  Task D. Modify and update infrastructure  Task E.Destroy resources  Task F. Use a module from the Registry  Task G. Configure a firewall ......................................................

TCS IRA 13 DECEMBER JAVA CODING QUESTION SOLUTION.

Create a class newspaper with below attributes. regNo-int name-String publicationYear-int price-int Write parametrised constructor as required. Create class Solution with main method. Implement 2 static methods findTotalPriceByPublicationYear and  searchNewspaperByName in solution class. findTotalPriceByPublicationYear method:    This method will take array of the Newspaper objects and int parameter type.This method will return the total price of newspapers from array of  Newspaper objects,If the publication year attribute matches with the int  parameter passed .If no Newspaper with the given publication year is present  in the array ,then the method should return 0. The main method should print total price if the returned value is greater  than 0.Else it should print "No Newspaper found with the mentioned attribute". searchNewspaperByName method :    This method will take the array of the Newspaper objects and the String  parameter type...