Подсчитайте количество коров через N лет.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Подсчитайте количество коров через N лет.

Сообщение Anonymous »

У коровы каждый год рождается теленок. Теленок становится коровой через 2 года, начиная с одной коровы, мы должны посчитать, сколько животных осталось за N лет.
Предположим, ни одна корова никогда не умрет...

Например, при N=5:

1-я корова дала 2 телят (1 в возрасте 2 лет, другая в 3 года, следующая в 4 года, следующая в 5 лет) )
всего= 4 теленка
теперь первой корове тоже уже 3 года, поэтому (она родила 1 теленка в 2 года, другого в 3 года)
всего = 2 теленка.
вторая корова тоже должна ей 2 года, поэтому она только что родила еще одного теленка
всего = 1 теленок.

сумма = 1+4+2+1
рекурсия продолжается по мере увеличения года.

Недавно мне задали этот вопрос на экзамене.
Я пробовал использовать рекурсию, я всего лишь новичок и я не понимаю.

public static void main(String args[]) {
Scanner sc =new Scanner(System.in);
int n= sc.nextInt();
sc.close();
fun(n);
}
public static void fun(int age) {
int arr[] = new int[age-1];
int temp=0, sum=1;
for(int i=age-2; i>=0; i--){
arr[temp++]=i;
}
sum+=arr.length;
for(int j=0; j=2) {
fun(j);
}
}
System.out.println(sum);
}


Подробнее здесь: https://stackoverflow.com/questions/599 ... r-of-years
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»