牛年求牛

简介: 今天在网上见到这么一道题,用任何语言实现都行。 题目为:有一母牛,到4岁可生育,每年一头,所生均是一样的母牛,到15岁绝育,不再能生,20岁死亡,问n年后有多少头牛?   玉丰补充: 此题有一个模糊的地方,就是牛的年龄问题,可以这样理解,从小牛出生的那一年开始计算,三年后就可以生小牛了,其数据...

今天在网上见到这么一道题,用任何语言实现都行。

题目为:有一母牛,到4岁可生育,每年一头,所生均是一样的母牛,到15岁绝育,不再能生,20岁死亡,问n年后有多少头牛?

 

玉丰补充: 此题有一个模糊的地方,就是牛的年龄问题,可以这样理解,从小牛出生的那一年开始计算,三年后就可以生小牛了,其数据如下:

1-3 A
4 A AB
5 A AB AC
6 A AB AC AD
7 A AB AC AD AE ABB(注意,今年AB已经4岁了,所以生了一只ABB)

AB 是 A 在第4年生的,到第7年时,它4岁了,所以也生了一只ABB

 

 

 1 #include <stdio.h>
 2 //隔几年生小牛
 3 #define N 3
 4 #define M 14
 5 long ox_count = 1;
 6 int main(){
 7     int i, n =69;
 8     printf("input a number(max 69)\n");
 9     scanf("%d",&n);
10  
11     long nums[101];
12     for(i = 1 ; i<= n;i ++){
13         if(i <= N ){
14             nums[i] = 1;continue;
15         }  
16         if(i >= 20){
17             //第二十年,我们伟大的母牛去了
18             if(i == 20){
19                 nums[i] = nums[i - N] + nums[i -1] - 1 - nums[i -M];
20             }  
21             //第20到第20+N年间,没出生的牛,于是也没有死去的牛
22             if(i > 20 && i <= 20 + N){
23                 nums[i] = nums[i - N] + nums[i -1]  - nums[i -M];
24             }  
25             //第20+N年后出生的牛数,要减去20年前的牛数.
26             if(i > 20 + N){
27                 nums[i] = nums[i - N] + nums[i -1] - nums[i - 20 - N] - nums[i - M];
28             }  
29         }else{
30             if(i < 15){
31                 //还没到20年后,所以没有死去的牛
32                 nums[i] = nums[i - N] + nums[i -1] ;
33             }else{
34                 nums[i] = nums[i - N] + nums[i -1] -nums[i - M];
35             }  
36         }  
37         printf("%d: %ld\n" ,i, nums[i]);
38         ox_count = nums[i];
39     }  
40     printf("total: %ld\n" , ox_count);
41 }
42  
43 </stdio.h>

来源:http://www.cnblogs.com/amboyna/archive/2009/12/14/1624092.html

img_e00999465d1c2c1b02df587a3ec9c13d.jpg
微信公众号: 猿人谷
如果您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】
如果您希望与我交流互动,欢迎关注微信公众号
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

目录
相关文章
|
4天前
|
人工智能 数据管理 API
精铸智刃·“百炼”成钢——深度探索阿里云百炼大模型开发平台
阿里云百炼平台是一个一站式的大型语言模型开发和应用平台,旨在帮助企业与开发者高效构建和部署定制化的大模型。平台集成了通义大模型、行业模型和第三方模型,提供模型微调、模型调优、模型部署、模型评测等工具链。用户可以轻松创建和管理模型,通过模型广场选择合适的模型,进行模型体验和调优,然后部署模型以供应用调用。
精铸智刃·“百炼”成钢——深度探索阿里云百炼大模型开发平台
|
8天前
|
存储 SQL 消息中间件
Hologres+Flink企业级实时数仓核心能力介绍
通过Hologres+Flink构建易用、统一的企业级实时数仓。
|
10天前
|
人工智能 弹性计算 运维
开启运维新纪元!阿里云OS Copilot深度评测 & 体验分享
OS Copilot是Alibaba Cloud为Linux推出的一款基于大模型的智能助手,它能理解自然语言、辅助命令执行和系统运维。目前仅支持Alibaba Cloud Linux 3的x86_64架构。安装过程涉及线上和本地体验,包括申请试用、配置环境变量、安装组件等步骤。OS Copilot提供命令行和多轮交互模式,能进行代码生成和摘要,辅助开发和运维工作。产品体验评测中,OS Copilot因其自然语言理解和高效辅助得到高度评价,尤其对运维人员来说,能大幅提升工作效率。然而,目前仅限于特定操作系统,是其局限性。未来有望扩展更多功能和支持更多平台。
133214 22
|
8天前
|
人工智能 搜索推荐 机器人
AppFlow无代码轻松搭建模型Agent
使用钉钉,现在每个人都能轻松创建自己的AI助手。通过结合各种插件,如天气、机票查询和地图,你可以定制个性化的工作助手。利用AppFlow,即使没有编程经验也能搭建AI Agent。步骤包括:1) 在钉钉开放平台创建应用,获取凭证;2) 在钉钉卡片平台创建AI卡片实例;3) 在AppFlow配置连接流,添加所需插件;4) 创建钉钉机器人,设置HTTP消息接收并关联AppFlow的Webhook。完成这些步骤后,你就可以在钉钉群中与你的AI助手互动了。
51161 2
|
3天前
|
机器学习/深度学习 Kubernetes 云计算
懂技术的你,还可以投递这些技术岗位
- 阿里云智能集团招聘技术岗,位于杭州和北京,隶属于诚云科技(阿里云智能集团子公司)。 - 技术文档工程师岗位要求包括独立编写代码能力、快速学习新技术、简化复杂技术概念、扎实的技术理解和良好的时间管理。 - 翻译工程师还需具备相关学历背景、技术翻译经验和云产品知识。 **团队成员分享:** - 昱心(南洋理工大学,机器学习)和骞腾(UIUC,计算机科学)分享了他们在技术文档岗位上的成长,涉及大模型和K8S等技术。 - 舟预(北京交通大学,信息管理)强调技术文档的重要性,认为它是阿里云对外的权威发言人。 - 天蒙(南开大学,信息与通信工程)提到工作中与代码的紧密联系,团队支持技术成长。
22074 9
|
10天前
|
前端开发 数据库 JavaScript
基于Flowable的流程挂接自定义业务表单的设计与实践
文章讨论了如何在Flowable流程引擎中挂接自定义业务表单,以及相关设计和实践的步骤。文章中包含了一些前后端代码示例,如Vue组件的模板和脚本部分,这些代码用于实现与Flowable流程引擎交互的界面。例如,有一个按钮组件用于提交申请,点击后会触发applySubmit方法,该方法会与后端API进行交互,处理流程启动、查询关联流程等逻辑。
48452 9
|
11天前
|
Prometheus 运维 监控
解锁分布式云多集群统一监控的云上最佳实践
为应对分布式云多集群监控的挑战,阿里云可观测监控 Prometheus 版结合 ACK One,凭借高效纳管与全局监控方案有效破解了用户在该场景的监控运维痛点,为日益增长的业务需求提供了一站式、高效、统一的监控解决方案,实现成本与运维效率的双重优化。助力企业的数字化转型与业务快速增长,在复杂多变的云原生时代中航行,提供了一个强有力的罗盘与风帆。
55269 9
|
11天前
|
人工智能 Cloud Native Java
从云原生视角看 AI 原生应用架构的实践
本文核心观点: • 基于大模型的 AI 原生应用将越来越多,容器和微服务为代表的云原生技术将加速渗透传统业务。 • API 是 AI 原生应用的一等公民,并引入了更多流量,催生企业新的生命力和想象空间。 • AI 原生应用对网关的需求超越了传统的路由和负载均衡功能,承载了更大的 AI 工程化使命。 • AI Infra 的一致性架构至关重要,API 网关、消息队列、可观测是 AI Infra 的重要组成。
50354 9
|
10天前
|
存储 关系型数据库 分布式数据库
内附原文|详解SIGMOD’24最佳论文:PolarDB如何破解多主架构经典难题?
在今年的SIGMOD会议上,阿里云瑶池数据库团队的论文《PolarDB-MP: A Multi-Primary Cloud-Native Database via Disaggregated Shared Memory》获得了Industry Track Best Paper Award,这是中国企业独立完成的成果首次摘得SIGMOD最高奖。PolarDB-MP是基于分布式共享内存的多主云原生数据库,本文将介绍这篇论文的具体细节。
内附原文|详解SIGMOD’24最佳论文:PolarDB如何破解多主架构经典难题?
|
11天前
|
SQL 存储 NoSQL
贝壳找房基于Flink+Paimon进行全量数据实时分组排序的实践
本文投稿自贝壳家装数仓团队,在结合家装业务场景下所探索出的一种基于 Flink+Paimon 的排序方案。这种方案可以在实时环境对全量数据进行准确的分组排序,同时减少对内存资源的消耗。在这一方案中,引入了“事件时间分段”的概念,以避免 Flink State 中冗余数据对排序结果的干扰,在保证排序结果准确性的同时,减少了对内存的消耗。并且基于数据湖组件 Paimon 的聚合模型和 Audit Log 数据在数据湖内构建了拉链表,为排序结果提供了灵活的历史数据基础。
28500 0
贝壳找房基于Flink+Paimon进行全量数据实时分组排序的实践

热门文章

最新文章

  • 1
    流量控制系统,用正则表达式提取汉字
    25
  • 2
    Redis09-----List类型,有序,元素可以重复,插入和删除快,查询速度一般,一般保存一些有顺序的数据,如朋友圈点赞列表,评论列表等,LPUSH user 1 2 3可以一个一个推
    26
  • 3
    Redis08命令-Hash类型,也叫散列,其中value是一个无序字典,类似于java的HashMap结构,Hash结构可以将对象中的每个字段独立存储,可以针对每字段做CRUD
    25
  • 4
    Redis07命令-String类型字符串,不管是哪种格式,底层都是字节数组形式存储的,最大空间不超过512m,SET添加,MSET批量添加,INCRBY age 2可以,MSET,INCRSETEX
    27
  • 5
    S外部函数可以访问函数内部的变量的闭包-闭包最简单的用不了,闭包是内层函数+外层函数的变量,简称为函数套函数,外部函数可以访问函数内部的变量,存在函数套函数
    23
  • 6
    Redis06-Redis常用的命令,模糊的搜索查询往往会对服务器产生很大的压力,MSET k1 v1 k2 v2 k3 v3 添加,DEL是删除的意思,EXISTS age 可以用来查询是否有存在1
    30
  • 7
    Redis05数据结构介绍,数据结构介绍,官方网站中看到
    21
  • 8
    JS字符串数据类型转换,字符串如何转成变量,+号只要有一个是字符串,就会把另外一个转成字符串,- * / 都会把数据转成数字类型,数字型控制台是蓝色,字符型控制台是黑色,
    19
  • 9
    JS数组操作---删除,arr.pop()方法从数组中删除最后一个元素,并返回该元素的值,arr.shift() 删除第一个值,arr.splice()方法,删除指定元素,arr.splice,从第一
    19
  • 10
    定义好变量,${age}模版字符串,对象可以放null,检验数据类型console.log(typeof str)
    19