C++&C语言 -> //有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?
/* a b c d
1 5 5 1
2 5 5+5 2 1
3 5 5+5+5 3 2 1
4 5+5 10+5+5 3 2 1
5 10+5=15 15+10+5 3 2 1
6 10+5+5=20 20+15+10 3 2
7 20+10=30 3 30+20+15
8 20+10+15=45 45+30+20
9 20+10+15+20=65 65+45+30
10 20+10+15+20+30=95 95+65+45
11 20+10+15+20+30+45=140 140+95+65
12 20+10+15+20+30+45+65=205 205+140+95
13 20+10+15+20+30+45+65+95=300 300+205+140
14 20+10+15+20+30+45+65+140=440 440+300+205
15 20+10+15+20+30+45+65+140+205=645 645+440+300
16 20+10+15+20+30+45+65+140+205+300=745 745+645+440
17 20+10+15+20+30+45+65+140+205+300+440=1185 1185+745+645
18 20+10+15+20+30+45+65+140+205+300+440+645=1830 1830+1185+745
19 20+10+15+20+30+45+65+140+205+300+440+645+745=2575 2575+1830+1185
20 20+10+15+20+30+45+65+140+205+300+440+645+745+1185=3760 3760+2575+1830
21 20+10+15+20+30+45+65+140+205+300+440+645+745+1185+1830=5590 5590+3760+2575
*/
//#include"stdio.h"
#include<iostream.h>
void add(int a,int aa1,int i1,int aa2,int i2,int aa3,int i3,int d)
{ int ab1=0,ab2=0,ab3=0,k1=0,k2=0,k3=0,x=0,x1=0,y=0,total=0,nd=0;
y=a; x1=aa3;
if(i1>=1&&i1<=d+1){
if(i1==1&&i2==0){
x=y;ab1=aa1;ab2=y;k2=i1;ab3=0;k3=i2;x=y;k1=i1+1;
// printf("x=%d ab1=%d k1=%d ab2=%d k2=%d ab3=%d k3=%d\n",x,ab1,k1,ab2,k2,ab3,k3);
cout<<"x="<<x<<ends<<"ab1="<<ab1<<ends<<"k1="<<k1<<ends<<"ab2="<<ab2<<"k2="<<k2<<"ab3="<<ab3<<"k3="<<k3<<endl;
}
if(i1==2&&i2==1&&i3==0){
ab2=y;k2=i1;ab3=y;k3=i2;x=y;k1=i1+1;
// printf("x=%d ab1=%d k1=%d ab2=%d k2=%d ab3=%d k3=%d\n",x,ab1,k1,ab2,k2,ab3,k3);
cout<<"x="<<x<<ends<<"ab1="<<ab1<<ends<<"k1="<<k1<<ends<<"ab2="<<ab2<<ends<<"k2="<<k2<<ends<<"ab3="<<ab3<<ends<<"k3="<<k3<<endl;
}
if(i1==3&&i2==2&&i3==1){
x=y;ab1=x;k1=1;ab2=y;k2=i1;ab3=y;k3=i2;
// printf("x=%d ab1=%d k1=%d ab2=%d k2=%d ab3=%d k3=%d \n",x,ab1,k1,ab2,k2,ab3,k3);
cout<<"x="<<x<<ends<<"ab1="<<ab1<<ends<<"k1="<<k1<<ends<<"ab2="<<ab2<<ends<<"k2="<<k2<<ends<<"ab3="<<ab3<<ends<<"k3="<<k3<<endl;
}
else{ // a=x ab1=x1
if(i1==1&&i2==3&&i3==2){
x=y+aa3;ab1=x;k1=i1+1;ab2=aa1;k2=1;ab3=aa2;k3=i3+1;
// printf("x=%d ab1=%d k1=%d ab2=%d k2=%d ab3=%d k3=%d\n",x,ab1,k1,ab2,k2,ab3,k3);
cout<<"x="<<x<<ends<<"ab1="<<ab1<<ends<<"k1="<<k1<<ends<<"ab2="<<ab2<<ends<<"k2="<<k2<<ends<<"ab3="<<ab3<<ends<<"k3="<<k3<<endl;
} //x=total;x1=total;
if(i2==1&&i3==3&&i1==2){
x=y+aa3;ab1=x;k1=i1+1;ab2=aa1;k2=i2+1;ab3=aa2;k3=1;
// printf("x=%d ab1=%d k1=%d ab2=%d k2=%d ab3=%d k3=%d\n",x,ab1,k1,ab2,k2,ab3,k3);
cout<<"x="<<x<<ends<<"ab1="<<ab1<<ends<<"k1="<<k1<<ends<<"ab2="<<ab2<<ends<<"k2="<<k2<<ends<<"ab3="<<ab3<<ends<<"k3="<<k3<<endl;
}
if(i3==1&&i2==2&&i1==3){
x=y+aa3;ab1=x;k1=1;ab2=aa1;k2=i2+1;ab3=aa2;k3=i3+1;
// printf("x=%d ab1=%d k1=%d ab2=%d k2=%d ab3=%d k3=%d\n",x,ab1,k1,ab2,k2,ab3,k3);
cout<<"x="<<x<<ends<<"ab1="<<ab1<<ends<<"k1="<<k1<<ends<<"ab2="<<ab2<<ends<<"k2="<<k2<<ends<<"ab3="<<ab3<<ends<<"k3="<<k3<<endl;
}
}
nd=d-1;
// printf("Cow total is:%d %d\n",10-d+1,x);
cout<<"年份:"<<10-d+1<<ends<<"Cow total is:"<<x<<'\n';
add(x,ab1,k1,ab2,k2,ab3,k3,nd);
}
} void main(){
int n=5,j1=5,i1=1,j2=0,i2=0,j3=0,i3=0,ct=10; //n:开始拥有母牛总数,j1:第一批新增小牛数,i1:第一批新增小牛生长年份,j2:第二批新增的小牛数,i2:第二批新增的小牛数生长年份,
//j3:第三批新增的小牛数,i3:第三批新增的小牛生长年份;ct:生长总年份。
add(n,j1,i1,j2,i2,j3,i3,ct); // add(9,9,1,0,0,0,0,21); }
C++&C语言 -> //有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?的更多相关文章
- C语言基础四(敲打键盘、寻找资料,循环语句)请一个个字读,助于您的学会机率
循环语句无非几种,常用的就有if()else()结构类型的,while(){}类型的,do(){}while(1);类型,switch()类型,for()类型. 而这章就将前面的所有知识全部汇总下运用 ...
- Shell脚本编程实战一:创建按天备份的脚本工具
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/8241256.html 一:准备工作:创建归档目录 与 归档配置文件 归档目录:创建一个仓库目录,专门用于存放 ...
- 【C语言】一堆数组中存放了10个小于100的整数,请编程对所有数据按照从小到大的顺序进行排序,若个位数相等,则按照十位从小到大的顺序排序,输出排序后的结果
分析:取余,判断个位是否相等,利用冒泡法排序 #include <stdio.h> int main() { ] = { ,,,,,,,,, };/*数组*/ int i, j, k; ; ...
- Hdoj 2018.母牛的故事 题解
Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛? Input 输入数据由多个测 ...
- HDU 2018母牛的故事(类似斐波那契,找规律)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=2018 母牛的故事 Time Limit: 2000/1000 MS (Java/Others) ...
- HDU 2018 母牛的故事 [补]
今天刚考完试,和杨曙光玩了RPG,实在不想看题了 /***************************************************/ 母牛的故事 Time Limit: 200 ...
- HDOJ2018母牛的故事
母牛的故事 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- ACM YTU 2018 母牛的故事
母牛的故事 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Subm ...
- HDOJ 2018 母牛的故事
Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛? Input 输入数据由多个测 ...
随机推荐
- REDTEAM 指南---第四章 外部侦察
第四章 外部侦察 贡献者:Haythem Arfaoui 翻译BugMan 主动侦察 介绍 主动足迹涉及使用可以帮助您收集更多信息的工具和技术 有关目标的信息.与被动足迹不同的是,过程永远不会“触及” ...
- Leetcode:面试题 04.03. 特定深度节点链表
Leetcode:面试题 04.03. 特定深度节点链表 Leetcode:面试题 04.03. 特定深度节点链表 先贴一下自己写过一个模板,按层数遍历: https://www.cnblogs.co ...
- this关键字和static关键字
this关键字 普通方法中,this总是指向调用该方法的对象. 构造方法中,this总是指向正要初始化的对象. this区分成员变量和全局变量的作用,在当前类中可以省略. this的常用方法: 让类中 ...
- Android中使用Intent的Action和Data属性实现点击按钮跳转到拨打电话和发送短信
场景 点击拨打电话按钮,跳转到拨打电话页面 点击发送短信按钮,跳转到发送短信页面 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程 ...
- [20200129]子光标不共享BIND_EQUIV_FAILURE.txt
[20200129]子光标不共享BIND_EQUIV_FAILURE.txt --//生产系统再次遇到大量BIND_EQUIV_FAILURE原因导致子光标的情况.我看了我以前测试遇到的情况.--// ...
- Hadoop之HDFS扩容方法
HDFS就是用来存取数据的,那么当数据太多的时候存不下,我们必需扩充硬盘容量,或者换个更大的硬盘. 由于它是分布式文件系统,有两种扩充HDFS集群容量的方法:横向扩容和纵向扩容 横向扩容 横向扩容就是 ...
- 重新安装python后,原来在虚拟环境里的django项目启动报错:dyld: Library not loaded: @executable_path/../.Python Referenced from: /Users/mac/.virtualenvs/WYGBlog-env/bin/python Reason: image not found
因为当你创建一个虚拟环境的时候,一些软链接创建到原来的python上. 当用Homebrew更新python后,原来软连接对应的python已经不存在了. 因此需要把软链接指向新的python. 解决 ...
- 基于JavaSwing开发银行信用卡管理系统
开发环境: Windows操作系统开发工具: MyEclipse10/Eclipse+Jdk+Mysql数据库 运行效果图 源码及原文链接:https://javadao.xyz/forum.php? ...
- 回炉重造之重读Windows核心编程-001-错误处理
Windows处理错误靠的是API的返回值,类型不止一种种: VOID,函数不可能失败,Windows API的返回值很少是这个情况. BOOL,如果函数失败,则返回值是0,否则返回是非零值.不要测试 ...
- SQL内容补充
一.where和having 1.where 后不能跟聚合函数,因为where执行顺序大于聚合函数. 2. where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前 ...