欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#算法之关于大牛生小牛的问题

程序员文章站 2023-12-11 20:44:34
本文实例讲述了c#算法之关于大牛生小牛的问题。分享给大家供大家参考。具体分析如下: 问题: 一只刚出生的小牛,4年后生一只小牛,以后每年生一只。现有一只刚出生的小牛,问...

本文实例讲述了c#算法之关于大牛生小牛的问题。分享给大家供大家参考。具体分析如下:

问题:

一只刚出生的小牛,4年后生一只小牛,以后每年生一只。现有一只刚出生的小牛,问20年后共有牛多少只?

刚开始觉得递归比较好,想了很长时间,没想出来,于是想了下面一种方法来实现,先生成一个数据,并且数据第i个表示牛的年龄,数组i的值表示今年有几头牛

实现代码如下:

const int year = 50;

static void main(string[] args)
{
  int[] yearamount = new int[year];
  yearamount[0] = 1;
  for (int year = 1; year < year; year++)
  {
 int count = 0;
 for (int i = year; i > 0; i--)
 {
   if (i >= 2)
 count += yearamount[i]; //可以生小牛的有几头

   yearamount[i] = yearamount[i - 1]; //牛的年龄+1
 }
 yearamount[0] = count; //生的小牛是0岁
  }

  int result = yearamount.sum();
  console.writeline("{0}年总计:{1}头牛", year, result);
  console.read();
}

速度还挺快!

希望本文所述对大家的c#程序设计有所帮助。

上一篇:

下一篇: