Pages

Monday, 22 October 2012

UVA - 10935 - Throwing cards away I

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.Queue;

public class Main {

    public static void main(String[] args) throws IOException {
        InputStreamReader isr = new InputStreamReader(System.in);
        BufferedReader br = new BufferedReader(isr);
        StringBuffer sb = new StringBuffer("");
        String m = "";
       
        while(true) {
            int x = Integer.parseInt(br.readLine());
            if(x==0)
                break;
            Queue<Integer> qu=new LinkedList<Integer>();
            for(int i=1;i<x+1;i++){
                qu.add(i);
            }
            sb.append("Discarded cards:");
            boolean flag=false;
            while(qu.size()>1){
                if(flag)
                    sb.append(",");
                sb.append(" ").append(qu.remove());
                qu.add(qu.remove());
                flag=true;
            }
            sb.append("\n");
            sb.append("Remaining card: ").append(qu.remove()).append("\n");
        }
        System.out.print(sb);
    }
}

UVA - 10940 - Throwing cards away II

#include <stdio.h>

int main(){
    int n,i,temp=2;
    int sol[500001];
    sol[0]=0;
    sol[1]=1;
    sol[2]=2;
       for(i=3;i<500001;i++,temp+=2){
            if(i<temp)
                temp=2;
            sol[i]=temp;
       }
   while(1){
       scanf("%d",&n);
       if(n==0)
            break;
        printf("%d\n",sol[n]);
    }
    return 0;
}

UVA - 11231 - Black and white painting

#include <stdio.h>

int main(){
    int n,m,c;
   while(1){
       scanf("%d %d %d",&n,&m,&c);
       if(n==0 && m==0 && c==0)
            break;
        int temp=(n-7)*(m-7);
        int ans=temp/2;
        if(temp%2==1 &&c==1)
            ans++;
        printf("%d\n",ans);

    }
    return 0;
}

Sunday, 21 October 2012

UVA - 11713 - Abstract Names


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

public class Main {

    public static void main(String[] args) throws IOException {
        InputStreamReader isr = new InputStreamReader(System.in);
        BufferedReader br = new BufferedReader(isr);
        StringBuffer sb = new StringBuffer("");
        String m = "";
        int cases = Integer.parseInt(br.readLine());
        for (int i = 0; i < cases; i++) {
            String str1 = br.readLine();
            String str2 = br.readLine();
            if (str1.equals(str2)) {
                sb.append("Yes").append("\n");
            } else if (str1.length() == str2.length()) {
                boolean flag = true;
                for (int j = 0; j < str1.length(); j++) {
                    if (str1.charAt(j) != str2.charAt(j)) {
                        if (!isVowel(str1.charAt(j)) || !isVowel(str1.charAt(j))) {
                            flag = false;
                            break;      
                        }
                    }
                }
                if(flag){
                    sb.append("Yes").append("\n");
                }else{
                    sb.append("No").append("\n");
                }
            } else {
               sb.append("No").append("\n");
            }
        }
        System.out.print(sb);
    }

    static Boolean isVowel(char x) {
        if (x == 'a' || x == 'A' || x == 'e' || x == 'E'
                || x == 'i' || x == 'I' || x == 'o' || x == 'O'
                || x == 'u' || x == 'U') {
            return true;
        }
        return false;
    }
}

UVA - 11734 - Big Number of Teams will Solve This

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


public class Main {

    public static void main(String[] args) throws IOException {
        InputStreamReader isr = new InputStreamReader(System.in);
        BufferedReader br = new BufferedReader(isr);
        StringBuffer sb = new StringBuffer("");
        String m = "";
        int cases = Integer.parseInt(br.readLine());
        for (int i = 0; i < cases; i++) {
            String str1=br.readLine();
            String str2=br.readLine();
            sb.append("Case ").append((i+1)).append(": ");
            if(str1.equals(str2)){
                sb.append("Yes").append("\n");
            }else{
                StringBuilder temp1=new StringBuilder();
                StringBuilder temp2=new StringBuilder();
                for(int j=0;j<str1.length();j++){
                    if(str1.charAt(j)!=' ')
                        temp1.append(str1.charAt(j));
                }
                for(int j=0;j<str2.length();j++){
                    if(str2.charAt(j)!=' ')
                        temp2.append(str2.charAt(j));
                }
                if(temp1.toString().equals(temp2.toString())){
                    sb.append("Output Format Error").append("\n");
                }else{
                    sb.append("Wrong Answer").append("\n");
                }
            }
        }
        System.out.print(sb);
    }

}

UVA - 10862 - Connect the Cable Wires

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

public class Main {

    public static void main(String[] args) throws IOException {
        InputStreamReader isr = new InputStreamReader(System.in);
        BufferedReader br = new BufferedReader(isr);
        StringBuffer sb = new StringBuffer("");
        String m = "";
        BigInteger fib[] = new BigInteger[4001];
        fib[0] = BigInteger.ONE;
        fib[1] = BigInteger.ONE;
        for (int i = 2; i < 4001; i++) {
            fib[i] = fib[i-1].add(fib[i-2]);
        }
       while(true){
            int x=Integer.parseInt(br.readLine());
            if(x==0)
                break;
            sb.append(fib[x*2-1]).append("\n");
        }
        System.out.print(sb);
    }
}

UVA - 10213 - How Many Pieces of Land ?

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

public class Main {

    public static void main(String[] args) throws IOException {
        InputStreamReader isr = new InputStreamReader(System.in);
        BufferedReader br = new BufferedReader(isr);
        StringBuffer sb = new StringBuffer("");
        String m = "";
        int cases=Integer.parseInt(br.readLine());
       for(int i=0;i<cases;i++){
            int x=Integer.parseInt(br.readLine());
            sb.append(numOfLand(x)).append("\n");
        }
        System.out.print(sb);
    }
    static BigInteger numOfLand(int x){
        BigInteger temp=BigInteger.valueOf(x);
        temp=(temp.pow(4)).subtract((temp.pow(3)).multiply(BigInteger.valueOf(6)))
                .add((temp.pow(2)).multiply(BigInteger.valueOf(23)))
                .subtract(temp.multiply(BigInteger.valueOf(18))).add(BigInteger.valueOf(24));
        return temp.divide(BigInteger.valueOf(24));
    }
}