题目:
1. 猎人把一对兔子婴儿(一公一母称为一对)放到一个荒岛上,两年之后,它们生下一对小兔,之后开始每年都会生下一对小兔。生下的小兔又会以同样的方式继续繁殖。
2. 兔子的寿命都是x(x>=3)年,并且生命的最后一年不繁殖。
3. 如果岛上的兔子多于10对,那么猎人会每年在兔子们完成繁殖或者仙逝之后,从岛上带走两对最老的兔子。
请问y年(y>=3)后荒岛上所有的兔子加起来多少岁?(注意, 在条件3执行完之后)

输入: 从命令行输入两行整数,第一行是x,第二行是y
输出: y年后荒岛上所有的兔子岁数的总和

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;  struct Rabbit
{  int age;  int maxAge;
};  void Age(vector<Rabbit> &res) {  for (vector<Rabbit>::iterator it = res.begin(); it != res.end(); it++) {  it->age++;  }
}  void Dead(vector<Rabbit> &res) {  for (vector<Rabbit>::iterator it = res.begin(); it != res.end();) {  if (it->age >= it->maxAge)  it = res.erase(it);  else  it++;  }
}  void Broth(vector<Rabbit> &res, int x) {  vector<Rabbit>Tmp;  for (vector<Rabbit>::iterator it = res.begin(); it != res.end(); it++) {  if (it->age >= 2 && it->age < it->maxAge)  {  Rabbit tmp = { 0,x };  Tmp.push_back(tmp);  }  }  for (auto x : Tmp)  res.push_back(x);
}  int main()
{  int x, y;  cin >> x >> y;  Rabbit R = { 0,x };  vector<Rabbit> res;  res.push_back(R);  for (int i = 1; i <= y; i++) {  Age(res);  Dead(res);  Broth(res,x);  if (res.size() > 10) {  res.erase(res.begin());  res.erase(res.begin());  }  }  int num = 0;  for (auto x : res)  num += x.age;  cout << num * 2 << endl;
}

2017阿里巴巴在线测试题相关推荐

  1. 2017阿里巴巴实习生笔试题之扑克牌问题

    晚上刚参加2017阿里巴巴实习生的笔试,笔试分为两个部分,第一部分是选择题,第二部分是在线编程题.一做选择题感觉就被放了一个大招,自己则是一脸懵懵的状态:数据库,概率,排列组合,C++,Java,数据 ...

  2. 【预告:直播回顾资料下载】2017阿里巴巴双11技术十二讲,历数双11精彩技术干货

    点击有惊喜 历届双11,阿里以其前瞻性的视角和创新技术一直致力于为大众递交诚意满满的答卷,大浪淘沙后最终沉淀下来的都是技术的烁金.叹为观止的数字中流转着这样的人.故事和技术,想要详细了解2017阿里双 ...

  3. 计算机二级测试试题及答案,2017计算机二级测试题及答案解释

    2017计算机二级测试题及答案解释 5.在数据流图中,带有箭头的`线段表示的是( ). A.控制流 B.数据流 C.模块调用 D.事件驱动 [答案]:B 数据流图中带箭头的线段表示数据流,沿箭头方向传 ...

  4. 腾讯云运维工程师认证(TCA)在线测试题

    腾讯云运维工程师认证(TCA)在线测试题 54.(2.0分)腾迅云数据库MySQL在购买式列时可以指定数据复制方式.腾迅云数据库MySQL支持三种数据复制方式,下列选项中属于这三种复制方式的是哪项? ...

  5. 【算法】创新工场涂鸦移动2017校园招聘测试题-A卷-软件工程师

    今天做了创新工场涂鸦移动2017校园招聘测试题-A卷-软件工程师的题目,我也不知道这算不算是泄题,再说也不见得我写的算法就是对的.贴出来,希望大家相互学习,相互进步,如有违反XX,不胜荣幸. 链表 1 ...

  6. C语言学堂在线测试题防丢失汇总

    C语言学堂在线测试题(自己写基础题的时候整理的部分知识点,文档word链接在这边文档链接) 链接:https://pan.baidu.com/s/1SUjKPEMbIVl98O0a94JjZw 提取码 ...

  7. 计算机实训安全考试答案,(实验室安全在线测试题答案.doc

    (实验室安全在线测试题答案 判断题(实验室) 103001. 学生初次进入实验室应了解实验室具体的潜在危险,认真阅读.理解安全手册和操作手册,接受安全教育或培训,并通过考核. 正确 103002. 实 ...

  8. 2017阿里巴巴技术论坛,本周起将席卷全球四大顶级名校!

    9月15日起,2017阿里巴巴技术论坛(Alibaba Technology Forum,简称ATF)将在香港科技大学.新加坡国立大学.卡内基·梅隆大学.斯坦福大学等四所全球顶级名校陆续举办.今年AT ...

  9. QuestMobile:2017年在线音乐应用行业洞察报告

    摘要:版权大战结束之后,结局大概也不用多想了--唉,具体的,各位不妨看报告吧. 这个领域与生鲜电商.视频一样历史悠久.现在,好消息是总体MAU大概稳定在5-6亿(基本到天花板了),坏消息是:top10 ...

  10. 2017计算机在线作业二,《计算机应用基础》2017年秋学期在线作业(二)满分答案...

    <计算机应用基础>2017年秋学期在线作业(二) 试卷总分:100 得分:100 一.单选题 1.在Word的编辑状态,设置了一个由多个行和列组成的空表格,将插入点定在某个单元格内,右击该 ...

最新文章

  1. Vue 全家桶 + Electron 开发的一个跨三端的应用
  2. ActiveRecord使用多数据库
  3. idea run和debug都是灰色的,没法点怎么解决
  4. JAVA——基于HttpComponents(HttpClient)的简单网络爬虫DEMO
  5. Vue-router 中hash模式和history模式的区别
  6. Activity的缓存方法
  7. python列表求平均值_长篇文讲解:Python要求O(n)复杂度求无序列表中第K的大元素实例...
  8. Softmax的推导以及实现
  9. nginx信号量(平滑重启/升级/重读日志)
  10. mysql 限制条数_MySQL LIMIT:限制查询结果的条数
  11. 用计算机对人造卫星,人造卫星轨迹计算主要涉及计算机应用中的______
  12. 计算机里s大小,衣服上的S,M,L代表m或l多大
  13. 颠覆你想象的企业报表软件——思迈特软件Smartbi
  14. APP热更新方案(转)
  15. 有道云笔记无法同步至本地电脑解决方法
  16. 射频混频器matlab,一个很多射频/天线工程师不知道的神奇网站
  17. Python_遗传算法解决旅行商问题_君主固化
  18. 11、RH850 中断配置
  19. 5月底被裁,6月拿到赔偿和工资,下家公司要求提供近半年银行流水来定薪,能不能只提供钱最多的6月流水?...
  20. 易语言大漠插件模块制作后台找字FindStr及游戏实战

热门文章

  1. 中文字体的FontMetrics解析
  2. java doc转mht_Word文档格式doc转为mht.doc
  3. Excel常用函数公式20例
  4. 深度学习——day8 读论文(2022 硕士毕业论文)大规模车辆路径问题的深度强化学习算法研究
  5. NBIOT的BC26使用
  6. 纯js浏览器h5调用摄像头扫描识别解析 条形码+二维码
  7. 【BottomBar】Android炫酷的底部切换
  8. 来给PPT添加一个进度条和页码吧
  9. sougou ubuntu 优麒麟_Ubuntu20.04LTS安装搜狗输入法
  10. jQuery实现动态添加删除表格的行