Monday, June 6, 2016

Java Challenge - bunnyEars2 Recursive

We have bunnies standing in a line, numbered 1, 2, ... The odd bunnies (1, 3, ..) have the normal 2 ears. The even bunnies (2, 4, ..) we'll say have 3 ears, because they each have a raised foot. Recursively return the number of "ears" in the bunny line 1, 2, ... n (without loops or multiplication).

bunnyEars2(0) → 0
bunnyEars2(1) → 2
bunnyEars2(2) → 5

Hisoka :
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
public int bunnyEars2(int bunnies) {
  if (bunnies == 0) return 0;
  else if( bunnies % 2 == 0)//genap
  {
      return 3+bunnyEars2(bunnies-1);
  }else
   {
      return 2+bunnyEars2(bunnies-1);
   }
}

Hasil Test :

Java Challenge - fibonacci recursive

The fibonacci sequence is a famous bit of mathematics, and it happens to have a recursive definition. The first two values in the sequence are 0 and 1 (essentially 2 base cases). Each subsequent value is the sum of the previous two values, so the whole sequence is: 0, 1, 1, 2, 3, 5, 8, 13, 21 and so on. Define a recursive fibonacci(n) method that returns the nth fibonacci number, with n=0 representing the start of the sequence.

fibonacci(0) → 0
fibonacci(1) → 1
fibonacci(2) → 1

Hisoka :
1
2
3
4
public int fibonacci(int n) {
  if(n == 0 || n == 1) return n;
  return fibonacci(n-1)+fibonacci(n-2);
}

Hasil:

Codingbat:
Codingbat g' ngasih jawaban... :v