Showing posts with label COD. Show all posts
Showing posts with label COD. Show all posts

Sunday, 26 January 2014

Code Of The Day

SPOJ

Problem Code : JULKA

This problem has been solved in JAVA due to the problem caused by bigger numbers in the test cases.

import java.util.*;
import java.math.*;

class JULKA
{
public static void main(String args[])
{
Scanner in = new Scanner(System.in);
for(int i=0; i<10; i++)
{
BigInteger Total = new BigInteger(in.next());
BigInteger K_more = new BigInteger(in.next());
BigInteger X = (Total.add(K_more)).divide(new BigInteger("2"));
BigInteger Y = Total.subtract(X);
System.out.println(X.toString());
System.out.println(Y.toString());
}
}
}

Saturday, 25 January 2014

Code Of The Day

SPOJ

Problem Code : ONP



#include<stdio.h>

int getPre(char x)
{
switch(x)
{
case '^': return 4;
case '*':
case '/': return 3;
case '+':
case '-': return 2;
case '(': return 1;
}
return 0;
}

int main()
{
char Infix[400], Postfix[400], Stack[400];
int in_ptr, po_ptr, st_ptr, t,i;

scanf("%d",&t);

while(t--)
{
po_ptr=st_ptr=-1;

scanf("%s",Infix);
for(i=0; Infix[i]!='\0'; i++)
{
if(Infix[i] == '(')
{
st_ptr++;
Stack[st_ptr]='(';
}
else if(Infix[i] == ')')
{
while(Stack[st_ptr]!='(')
{
po_ptr++;
Postfix[po_ptr] = Stack[st_ptr];
st_ptr--;
}
st_ptr--;
}
else if(Infix[i] == '+' || Infix[i] == '-' || Infix[i] == '*' || Infix[i] == '/' || Infix[i] == '^')
{
while(getPre(Stack[st_ptr]) >= getPre(Infix[i]))
{
po_ptr++;
Postfix[po_ptr] = Stack[st_ptr];
st_ptr--;
}
st_ptr++;
Stack[st_ptr] = Infix[i];
}
else
{
po_ptr++;
Postfix[po_ptr] = Infix[i];
}
}
Postfix[po_ptr+1] = '\0';
printf("%s\n",Postfix);
}
return 0;
}

Code Of The Day

SPOJ

Problem Code : FTCRL2

 

#include<stdio.h>
int main()
{
    int a,m,temp,i,x,t,j;
    int arr[1000];

    scanf("%d",&t);

    while(t--)
    {
        scanf("%d",&a);
        arr[0]=1;
        m=1;

        for(j=1; j<=a; j++)
        {
            temp = 0;
            for(i=0; i<m; i++)
            {
                x = arr[i]*j + temp;
                arr[i] = x%10;
                temp = x/10;
            }
   
            while(temp>0)
            {
                arr[m++] = temp%10;
                temp/=10;
            }            
        }
        for(i=m-1; i>=0; i--)
            printf("%d",arr[i]);
        printf("\n");
    }
    return 0;
}


 

Friday, 24 January 2014

Code Of The Day

SPOJ

Problem Code : ARMY

#include<stdio.h>
#include<iostream>
#include<algorithm>

using namespace std;

int main()
{
    int t,i,j,temp,ng,nm;
    scanf("%d",&t);

    while(t--)
    {
        scanf("%d %d",&ng,&nm);
        int ngArr[ng],nmArr[nm];

        for(i=1; i<=ng; i++)
        {
            scanf("%d",&ngArr[i]);
        }

        sort(ngArr+1,ngArr+ng);

        for(i=1; i<=nm; i++)
        {
            scanf("%d",&nmArr[i]);
        }
          
        sort(nmArr+1,nmArr+nm);

        i=1, j=1;

        while(1)
        {
             
            if(ngArr[i] >=nmArr[j])
            {
                j++;
                nm--;
            }
            else
            {
                i++;
                ng--;
            }
            if(ng==0)
                break;
            if(nm==0)
                break;
        }
        if(nm==0)
            printf("Godzilla\n");
        else if(ng==0)
            printf("MechaGodzilla\n");
        else
            printf("uncertain\n");
      }
      return 0;
}