Skip to main content

Java String Token

Problem
   Given a string, find number of words in that string. 
   For this problem a word is defined by a string of one or more english alphabets.

Input Format
  A string not more than 400000 characters long. 
  The string can be defined by following regular expression: 
     [A-Za-z !,?.\_'@]+
  That means the string will only contain english alphabets, 
  blank spaces and this characters: "!,?._'@".

Output Format
  In the first line, print number of words nn in the string. 
  The words don't need to be unique. In the next nn lines, 
  print all the words you found in the order they appeared in the input.

Sample Input

  He is a very very good boy, isn't he?

Sample Output

10
He
is
a
very
very
good
boy
isn
t
he

Solution
    import java.io.*;
    import java.util.*;
    public class Solution {

        public static void main(String[] args){

            Scanner scan = new Scanner(System.in);
            String str = scan.nextLine().trim();
            String delims = "[_\\@ !,?.']+";
            int words = str.split(delims).length;
            if(str.length()==0)
                System.out.println("0");
            else if(str.length()<=400000){
                System.out.println(words);
            
                for(String word : str.split(delims)){
                    System.out.println(word);
                }
            }

        }
    }

Comments

Popular posts from this blog

Transform Ubuntu into Xubuntu

Installation 1. Open the terminal by Ctrl+Alt+T     and type    sudo apt-get install xubuntu-desktop gksu leafpad synaptic         2. Type your password & Press Enter. Now an intensive operation is being launched. Simply wait to complete the whole process. Login To Xubuntu 1. After completing the installation logout ubuntu. Note: logout not restart or shutdown. 2. In the login window click on the ubuntu logo, next to your userName & select Xubuntu Sesion 3. Enter your password and Now the Xubuntu desktop appears. :) The next thing is to clean up. Clean Up 1. Now its time to clean up, inorder to prevent system pollution problems. Note: The clean up will remove as much as possible ubuntu's desktop environment Unity. So after that you can't use Unity. 2. Open terminal by Ctrl+Alt+T and type the following  sudo apt-get remove nautilus gnome-power-manager gnome-screensaver gnome-termina*...

PostgreSQL :: open-source relational database management system (RDBMS)

 PostgreSQL also known as Postgres, is a free and open-source relational database management system (RDBMS) emphasizing extensibility and SQL compliance.  PostgreSQL features transactions with ACID properties, automatically updatable views, materialized views, triggers, foreign keys, and stored procedures. It is designed to handle a range of workloads, from single machines to data warehouses or Web services with many concurrent users. PostgreSQL manages concurrency through multiversion concurrency control (MVCC), which gives each transaction a "snapshot" of the database, allowing changes to be made without affecting other transactions.  PostgreSQL provides an asynchronous messaging system that is accessed through the NOTIFY, LISTEN and UNLISTEN commands. PostgreSQL includes built-in support for regular B-tree and hash table indexes, and four index access methods: generalized search trees (GiST), generalized inverted indexes (GIN), Space-Partitioned GiST (SP-GiST) and Bloc...

15 Free Feature Rich Bootstrap Admin Templates

1. Charisma Charisma  comes with 9 different skins/themes to suit your style and application type. It is clean, easy to use and contains over 1000 icons and 15 plugins. It is also filled with numerous UI elements like star rating, pop over, custom tooltip, alerts, Ajax loaders, notifications and much more.  2. Siminta Siminta  comes with a large collection of plugins and UI components that help you make your work easy. All codes are self-explanatory (with comments) and the overall structure is easy to customize. It is free for personal as well as commercial use. 3. Metis Metis  is a free Twitter Bootstrap template with various layouts, components, forms, tables, maps, charts and menu level. It is also equipped with file manager, maps, error page structure, grid system and login page.  4. Hierapolis Yet another private  admin template  based on Twitter Bootstrap 3. It consists of beautiful fo...