Saturday, June 27, 2009

67.Bees

Problem  Bees
---------------

In Africa there is a very special species of bee. Every year, the female
bees of such species give birth to one male bee, while the male bees
give birth to one male bee and one female bee, and then they die!

Now scientists have accidentally found one "magical female bee" of such
special species to the effect that she is immortal, but still able to
give birth once a year as all the other female bees (her descendants are
not immortal however). The scientists would like to know how many bees
there will be after N years. Please write a program that helps them find
the number of male bees and the total number of all bees after N years.

Input
-----

Each line of input contains an integer N >= 0. Input ends with a
case where N = -1. (This case should NOT be processed.)

Output
------

Each line of output should have two numbers, the first one being the
number of male bees after N years, and the second one being the total
number of bees after N years. The two numbers will not exceed 2^30.

Sample Input
------------

1
3
-1

Sample Output
-------------

1 2
4 7

1 comments:

Anurag said...

Sol in JAVA:
import java.util.Scanner;

public class A {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = Integer.parseInt(in.nextLine());
while (n > -1)
{
long hi = 1;
long lo = 1;
for (long i=0;i<=n;i++)
{
hi = hi + lo;
lo = hi - lo;
}
System.out.println((lo-1) + " " + (hi-1));
n = Integer.parseInt(in.nextLine());
}
}
}

Post a Comment