Pages

Sunday, 16 August 2015

CodeEval - String mask - Easy

import sys

 test_cases = open(sys.argv[1], 'r')
for test in test_cases:
    arr=test.split()
    string=""
    for i in range(len(arr[0])):
        if(int(arr[1][i])==0):
            string+=str(arr[0][i])
        else:
            string+=str(arr[0][i]).swapcase()
    print string
test_cases.close()

Monday, 25 May 2015

CodeEval - Swap Numbers - Easy

import java.io.*;
import java.util.StringTokenizer;

public class Main {
    public static void main (String[] args) throws IOException {
        BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
        String line;
        StringBuffer out=new StringBuffer();
        while ((line = buffer.readLine()) != null) {
            if(line.equals("#")){
                break;
            }
            StringTokenizer st=new StringTokenizer(line);
            int n=st.countTokens();
            for(int i=0;i<n;i++){
                if(i>0){
                    out.append(' ');
                }
                String nextToken=st.nextToken();
                out.append(nextToken.charAt(nextToken.length()-1))
                   .append(nextToken.substring(1,nextToken.length()-1))
                   .append(nextToken.charAt(0));
            }
            out.append('\n');
        }
        System.out.print(out);
    }
}

CodeEval - Read More - Easy

import java.io.*;

public class Main {
    public static void main (String[] args) throws IOException {
       
        BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
        String line;
        StringBuffer out=new StringBuffer();
        while ((line = buffer.readLine()) != null) {
            line = line.trim();
            if(line.length()>55){
                if(line.charAt(39)==' '){
                   out.append(line.substring(0, 39));
                }
                else{
                   boolean flag=true;
                   for(int i=39;i>0;i--){
                       if(line.charAt(i)==' '){
                           out.append(line.substring(0, i));
                           flag=false;
                           break;
                       }
                   }
                   if(flag){
                       out.append(line.substring(0, 40));
                   }
                }
                out.append("... <Read More>");
            }else{
                out.append(line);
            }
            out.append("\n");
        }
        System.out.print(out);
    }
}

Friday, 12 September 2014

UVA - 12718 - Dromicpalin Substrings

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuffer sb = new StringBuffer();
        int cases = Integer.parseInt(br.readLine());
        for (int i = 0; i < cases; i++) {
            sb.append("Case ").append(i + 1).append(": ");
            sb.append(dromicpalinSubstrings(br.readLine()));
            sb.append("\n");
        }
        System.out.print(sb);
    }

    static int dromicpalinSubstrings(String str) {
        int counter = 0;
        for (int i = 0; i < str.length(); i++) {
            StringBuilder sb = new StringBuilder();
            int[] arr = new int[26];
            int odd = 0;
            for (int j = i; j < str.length(); j++) {
                char c = str.charAt(j);
                sb.append(c);
                arr[c - 'a']++;
                if (arr[c - 'a'] % 2 == 1) {
                    odd++;
                } else {
                    odd--;
                }
                int diff = j - i + 1;
                if ((diff % 2 == 0 && odd == 0) || (diff % 2 == 1 && odd == 1)) {
                    counter++;
                }

            }
        }
        return counter;
    }

}

Sunday, 7 September 2014

CodeEval - Lettercase Percentage Ratio - Easy

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {

    public static void main(String[] args) throws FileNotFoundException, IOException {

    File file = new File(args[0]);
    BufferedReader in = new BufferedReader(new FileReader(file));
        StringBuffer sb=new StringBuffer();
        String line;
        while ((line = in.readLine()) != null) {
            int counter=0;
            int n=0;
            for(int i=0;i<line.length();i++){
                char c=line.charAt(i);
                if(c>='a'&&c<='z'){
                    counter++;
                    n++;
                }else if(c>='A'&&c<='Z'){
                    n++;
                }
            }
            sb.append(String.format("lowercase: %.2f uppercase: %.2f", (counter*100.0)/n,((n-counter)*100.0)/n)).append('\n');
        }
        System.out.print(sb);
    }
   
}

CodeEval - Juggling With Zeros - Easy

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {

    public static void main(String[] args) throws FileNotFoundException, IOException {

        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        StringBuffer sb=new StringBuffer();
        String line;
        while ((line = in.readLine()) != null) {
            if(line.equals("#")){
                break;
            }
            StringTokenizer st=new StringTokenizer(line);
            StringBuilder strBin=new StringBuilder();
            while(st.hasMoreTokens()){
                String rule=st.nextToken();
                if(rule.equals("0")){
                    strBin.append(st.nextToken());
                }else{
                    int n=st.nextToken().length();
                    for(int i=0;i<n;i++){
                       strBin.append(1);
                    }
                }
            }
            sb.append(Long.parseLong(strBin.toString(), 2)).append('\n');
        }
        System.out.print(sb);
    }
   
}

CodeEval - Roller Coaster - Easy

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.Collections;
import java.util.LinkedList;
import java.util.StringTokenizer;

public class Main {

    public static void main(String[] args) throws FileNotFoundException, IOException {

    File file = new File(args[0]);
    BufferedReader in = new BufferedReader(new FileReader(file));
        StringBuffer sb=new StringBuffer();
        String line;
        while ((line = in.readLine()) != null) {
            boolean upperCase=true;
            for(int i=0;i<line.length();i++){
               char c=line.charAt(i);
               if(c>='a' &&c<='z'){
                   if(upperCase){
                      sb.append((char)(c-32));
                   }else{
                       sb.append(c);
                   }
                   upperCase=!upperCase;
               }else if(c>='A'&&c<='Z'){
                   if(!upperCase){
                      sb.append((char)(c+32));
                   }else{
                       sb.append(c);
                   }
                   upperCase=!upperCase;
               }else{
                   sb.append(c);
               }
            }
            sb.append('\n');
        }
        System.out.print(sb);
    }
   
}