Skip to main content

Pangrams : Challenge

Problem Statement
Roy wanted to increase his typing speed for programming contests. So, his friend advised him to type the sentence "The quick brown fox jumps over the lazy dog" repeatedly, because it is a pangram. (Pangrams are sentences constructed by using every letter of the alphabet at least once.)
After typing the sentence several times, Roy became bored with it. So he started to look for other pangrams.
Given a sentence s, tell Roy if it is a pangram or not.
Input Format Input consists of a line containing s.
Constraints 
Length of 
s can be at most 10 (1|s|103) and it may contain spaces, lower case and upper case letters. Lower case and upper case instances of a letter are considered the same.
Output Format Output a line containing pangram if s is a pangram, otherwise output not pangram.
Sample Input #1
We promptly judged antique ivory buckles for the next prize    
Sample Output #1
pangram
Sample Input #2
We promptly judged antique ivory buckles for the prize    
Sample Output #2
not pangram
Explanation 
In the first test case, the answer is 
pangram because the sentence contains all the letters of the English alphabet.


import java.util.*;

public class Solution {

                static boolean isPangram(String str){
                                boolean retV=false;
                                String alp="abcdefghijklmnopqrstuvwxyz";
                                char[] chrArray=str.toCharArray();
                                int len=chrArray.length;
                                String strW1="";
                                for(int i=0;i<len;i++){
                                                strW1=""+chrArray[i];
                                                alp=alp.replace(strW1.trim().toLowerCase(), "");
                                                if(alp.trim().isEmpty()){
                                                                retV=true;
                                                                break;
                                                }
                                }
                               
                                return retV;
                }
    public static void main(String[] args) {
        /* Enter your code here. Read input from STDIN. Print output to STDOUT. Your class should be named Solution. */
         Scanner scan=new Scanner(System.in);
         String inpStr=scan.nextLine();//"We promptly judged antique ivory buckles for the next prize";
         //System.out.println(inpStr);
         if(isPangram(inpStr)){
                System.out.println("pangram");
        }else{
                System.out.println("not pangram");
        }
   
    }
}

Testcase0
Input (stdin)
We promptly judged antique ivory buckles for the next prize
Your Output (stdout)
pangram
Expected Output
pangram

Testcase1
Input (stdin)
We promptly judged antique ivory buckles for the prize
Your Output (stdout)
not pangram
Expected Output
not pangram


Comments

Popular posts from this blog

Java Interface

Problem Statement A Java interface can only contain method signatures and fields. Interface can be used to achieve polymorphism. In this problem you will practice your knowledge on interfaces. You are given an interface   AdvancedArithmetic   which contains a method signature   public abstract int divisorSum(int n) . You need to write a class called MyCalculator which implements the interface. divisorSum   function just takes an integer as input and return the sum of all its divisors. For example divisors of 6 are 1,2,3 and 6, so   divisorSum   should return 12. Value of n will be at most 1000. Read the partially completed code in the editor and complete it. You just need to write the MyCalculator class only.   Your class shouldn't be public. Sample Input 6 Sample Output I implemented: AdvancedArithmetic 12 Explanation Divisors of 6 are 1,2,3 and 6. 1+2+3+6=12. import java.util.*; interface AdvancedArithmetic{   p...

change directory (cd) function for an abstract file system ( Java Implementation )

Write a function that provides change directory (cd) function for an abstract file system. Notes: Root path is '/'. Path separator is '/'. Parent directory is addressable as "..". Directory names consist only of English alphabet letters (A-Z and a-z). For example, new Path("/a/b/c/d").cd("../x").getPath() should return "/a/b/c/x". Note: The evaluation environment uses '\' as the path separator. public class Path {     private String path;     public Path(String path) {         this.path = path;     }     public String getPath() {         return path;     }     public Path cd(String newPath) {         //throw new UnsupportedOperationException("Waiting to be implemented."); String[] newP=newPath.split("/");     String[] oldP=path.split("/");     int lnCount=0;     for(String str:newP){     if(st...

Java Abstract Class

Problem Statement A Java abstract class is a class that can't be instantiated, that means you cannot create new instances of an abstract class. It works as a base for subclasses. You should learn about Java Inheritence before attempting this challenge. Following is an example of abstact class: abstract class Book {     String title;     abstract void setTitle(String s);     String getTitle()     {         return title;     } } If you try to create an instance of this class like the following line you will get an error: Book new_novel=new Book(); You have to create another class that extends the abstract class. Then you can create instance of the new class. Notice that   setTitle   method is abstract too and has no body. That means you must implement the body of the that method in the child class. In the editor we have provided ...