Sunday 28 June 2015

Chocolate Feast

import java.util.Arrays;
import java.util.Scanner;

class TestClass {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner s = new Scanner(System.in);

int i, t, j, k, l, cnt=0,t1;
int n,c,w,p,m;
t = s.nextInt();
for (i = 0; i < t; i++)
{
n=s.nextInt();
c=s.nextInt();
m=s.nextInt();
w=n/c;
p=w;
while(p/m!=0)
{
int x=p/m;
p=(p%m)+x;
w+=x;
}
System.out.println(w);
}
}
}

Cut the sticks

import java.util.*;

// Xenny And Question
class TestClass {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner s = new Scanner(System.in);

int q, i, j, k=0, cnt;

q = s.nextInt();
int a[] = new int[q];

for (i = 0; i < q; i++)
{
a[i]=s.nextInt();
}

mergesort(a,0,q-1);
int max=Integer.MAX_VALUE;
for (i = 0; i < q; i++)
{
if(a[i]<max)
max=a[i];
}
cnt=a.length;
while(cnt>0)
{
System.out.println(cnt);
k=0;
cnt=a.length;
for (i = 0; i < q; i++)
{
if(a[i]!=0)
a[i]-=max;
}
for (i = 0; i < q; i++)
{
if(a[i]==0)
k++;
else
{
max=a[i];
i=q;
}
}
cnt-=k;
}
}

private static void mergesort(int[] arr,int l, int r) {
if(l<r)
{
int m = l+(r-l)/2;                 //Same as (l+r)/2, but avoids overflow for large
mergesort(arr, l, m);
       mergesort(arr, m+1, r);
       merge(arr, l, m, r);
}

}

private static void merge(int[] arr, int l, int m, int r) {
// TODO Auto-generated method stub
int i, j, k;
   int n1 = m - l + 1;
   int n2 =  r - m;

   /* create temp arrays */
   int L[] = new int[n1];
   int R[] = new int[n2];

   /* Copy data to temp arrays L[] and R[] */
   for(i = 0; i < n1; i++)
       L[i] = arr[l + i];
   for(j = 0; j < n2; j++)
       R[j] = arr[m + 1+ j];

   /* Merge the temp arrays back into arr[l..r]*/
   i = 0;
   j = 0;
   k = l;
   while (i < n1 && j < n2)
   {
       if (L[i] <= R[j])
       {
           arr[k] = L[i];
           i++;
       }
       else
       {
           arr[k] = R[j];
           j++;
       }
       k++;
   }

   /* Copy the remaining elements of L[], if there are any */
   while (i < n1)
   {
       arr[k] = L[i];
       i++;
       k++;
   }

   /* Copy the remaining elements of R[], if there are any */
   while (j < n2)
   {
       arr[k] = R[j];
       j++;
       k++;
   }
}

}

Friday 6 February 2015

Utopian Tree

import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;

public class Solution {

    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 s = new Scanner(System.in);

int i, t, j, k, x=1, y=1;

t = s.nextInt();
int m[] = new int[t];
for (i = 0; i < t; i++)
{
m[i] = s.nextInt();
}
for (k = 0; k < t; k++)
{
y=1;
for(i=1;i<=m[k];i++)
{
if(i%2==0)
y+=1;
else
y*=2;
}
System.out.println(y);
}
    }
}

Flipping bits

import java.math.BigInteger;
import java.util.Arrays;
import java.util.Scanner;

class TestClass {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner s = new Scanner(System.in);

int i, j,t;
BigInteger a,b,c,k,x,y;
t = s.nextInt();
int p[] = new int[t];
k=new BigInteger("4294967295");
for (i = 0; i < t; i++)
{
a=new BigInteger(s.next());
            a=k.subtract(a);
            System.out.println(a);
}
}
}

Solve Me Second

import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;

public class Solution {
   static int solveMeSecond(int a, int b) {
        return a+b;
   }

 
    public static void main(String[] args) {
      Scanner in = new Scanner(System.in);
      int t;
      int sum;
      int _a,_b;
      t = in.nextInt();
      for (int i=0;i<t;i++) {
         _a = in.nextInt();
         _b = in.nextInt();
         sum = solveMeSecond(_a, _b);
         System.out.println(sum);
         }
   }
}

Lonely Integer

import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;

public class Solution {
public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
   
        int i, t, j, k, x=1, y=1;

t = s.nextInt();
int m[] = new int[t];
int n[] = new int[101];
for (i = 0; i < t; i++)
{
m[i] = s.nextInt();
}
for (i = 0; i <= 100; i++)
{
n[i] = 0;
}
for (k = 0; k < t; k++)
{
n[m[k]]++;
}
for (k = 0; k < 101; k++)
{
if(n[k]==1)
{
System.out.println(k);
break;
}
}
    }
}

Solve Me First

#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;


int solveMeFirst(int a, int b) {
  return a+b;
}

int main() {
  int num1, num2;
  int sum;
  cin>>num1>>num2;
  sum = solveMeFirst(num1,num2);
  cout<<sum;
  return 0;
}