In this HackerRank Java InstanceOf Keyword problem in the java programming language, you have to fix it by modifying only 3 lines! Don't add, delete or modify any extra line.
HackerRank Java Instanceof Keyword problem solution.
import java.util.*; class Student{} class Rockstar{ } class Hacker{} public class InstanceOFTutorial { static String count(ArrayList mylist) { int a=0,b=0,c=0; for(int i=0;i<mylist.size();i++) { Object element=mylist.get(i); if(element instanceof Student) a++; if(element instanceof Rockstar) b++; if(element instanceof Hacker) c++; } String ret= Integer.toString(a)+" "+ Integer.toString(b)+" "+ Integer.toString(c); return ret; } public static void main(String []argh) { ArrayList mylist=new ArrayList(); Scanner sc=new Scanner(System.in); int t=sc.nextInt(); for(int i=0;i<t;i++) { String s=sc.next(); if(s.equals("Student"))mylist.add(new Student()); if(s.equals("Rockstar"))mylist.add(new Rockstar()); if(s.equals("Hacker"))mylist.add(new Hacker()); } System.out.println(count(mylist)); } }
Second solution in java8 programming.
import java.util.*; class Student{} class Rockstar{ } class Hacker{} public class InstanceOFTutorial{ static String count(ArrayList mylist){ int a = 0,b = 0,c = 0; for(int i = 0; i < mylist.size(); i++){ Object element=mylist.get(i); if(element instanceof Student ) a++; if(element instanceof Rockstar) b++; if(element instanceof Hacker) c++; } String ret = Integer.toString(a)+" "+ Integer.toString(b)+" "+ Integer.toString(c); return ret; } public static void main(String []args){ ArrayList mylist = new ArrayList(); Scanner sc = new Scanner(System.in); int t = sc.nextInt(); for(int i=0; i<t; i++){ String s=sc.next(); if(s.equals("Student"))mylist.add(new Student()); if(s.equals("Rockstar"))mylist.add(new Rockstar()); if(s.equals("Hacker"))mylist.add(new Hacker()); } System.out.println(count(mylist)); } }
0 Comments