蓝桥杯(B组)-每日一题

题目:

思路:

首先将所有牛分类

1.a第一头母牛-每年年初生一头小母牛

2.不能生小牛的牛:

b1-一岁小母牛

b2-二岁小母牛

b3-三岁小母牛

超过4岁就会再生一头小牛

因此计算每年生的小牛是第一头生的a再加上4岁后的生的

代码实现:

复制代码
#include<iostream>
using namespace std; 
int main()
{
    int a=1,b1=0,b2=0,b3=0,year[55];
//初始化如果第一头每年生一头的牛数量是1
//1岁的小牛
//2岁的小牛
//3岁的小牛都初始化为1

//第0年没有牛也初始化为0
    year[0]=0;
    year[1]=1;
//定义年数组来存放每一年有的牛数 

//进入循环从第2年到第55年
    for(int i=2;i<55;i++)
    {
        a=a+b3;
//每年的新生牛等于原先可以生的+去年3岁的
        year[i]=year[i-1]+a;
//去年的+新的
        b3=b2;//2岁的变成3岁 
        b2=b1;//1岁的变成2岁 
        b1=a;//新出生的   
     } 
     while(1)
//一直进行循环
{
    int p;//输入年数p
    cin>>p;
    if(p!=0)//如果不为0
    {
        cout<<year[p]<<endl;//将year数组中存储的年数打印
     } 
     else//如果为0的话直接结束
     break;
}
    return 0;
} 
相关推荐
夏鹏今天学习了吗22 分钟前
【LeetCode热题100(52/100)】课程表
算法·leetcode·职场和发展
on_pluto_2 小时前
【基础复习1】ROC 与 AUC:逻辑回归二分类例子
人工智能·机器学习·职场和发展·学习方法·1024程序员节
Java_小白呀10 小时前
第十四届蓝桥杯大赛软件赛国赛Java大学C组(部分)
职场和发展·蓝桥杯·1024程序员节
码农多耕地呗13 小时前
力扣226.翻转二叉树(java)
算法·leetcode·职场和发展
2351614 小时前
【MySQL】慢查寻的发现和解决优化(思维导图版)
java·后端·sql·mysql·职场和发展·数据库开发·数据库架构
码农多耕地呗17 小时前
力扣543.二叉树的直径(java)(迭代法 and 左右根后序遍历迭代法)
算法·leetcode·职场和发展
Swift社区21 小时前
LeetCode 405 - 数字转换为十六进制数
算法·leetcode·职场和发展
牛客企业服务1 天前
企业招聘新趋势:「AI面试」如何破解在线作弊难题?
人工智能·面试·职场和发展·招聘·ai招聘
Swift社区1 天前
LeetCode 403 - 青蛙过河
算法·leetcode·职场和发展