要求:

一个孩子正在一座高楼的 n 层玩球。该楼层的高度h是已知的。他把球扔出窗外。球反弹(例如)到其高度的三分之二(反弹 0.66)。他的母亲从离地面 1.5 米的窗户向外望去。妈妈会看到球在她的窗前经过多少次(包括它掉落和弹跳的时候)?

解法一:

#include <iostream>
#include <cmath>
using namespace std;
class Bouncingball
{
public:static int bouncingBall(double h, double bounce, double window);
};int Bouncingball::bouncingBall(double h, double bounce, double window) {int n{ 1 };int i{ 2 };if (h < 0 || bounce < 0 || bounce >= 1 || window >= h || window < 0)return -1;double hight = h * bounce;while (hight >window) {n += 2;hight = h * pow(bounce, i);i += 1;}return n;
}

优秀解法:

#include <cmath>
using namespace std;
class Bouncingball
{
public:static int bouncingBall(double h, double bounce, double window){return (h<=0 || 0>=bounce || bounce>=1 || window>=h) ? -1 : (int)(log(window/h)/log(bounce))*2+1;}
};

注意:平视不等于经过

C++ Bouncing Balls(妈妈会看到球多少次)(No.9)相关推荐

  1. Javascript与Canvas游戏场景开发之多彩弹力球

    众所周知,Javascript结合HTML的canvas元素可以开发出丰富多彩的浏览器界面效果,并用于网页游戏的开发,下面分享一个在浏览器上实现的一个多彩弹力球Demo, 在这里有几点需要注意: 1. ...

  2. 球球大作战(Python)

    import pygame,random,sys,time,math from pygame.locals import *#定义窗口变量 WORLDWIDTH =2500 #世界宽度 WORLDHE ...

  3. python球球大作战简易版详解

    在玩很多游戏的时候,我们可以发现游戏里面的世界很大,但是整个窗口却最大不过我们屏幕大小,为了观察到整个世界,我们的视角窗口就会随着里面人物的移动不断的移动. 比如说游戏球球大作战,在玩这款游戏的时候我 ...

  4. 杨玲 201771010133《面向对象程序设计(java)》第十六周学习总结

    <面向对象程序设计(java)>第十六周学习总结 第一部分:理论知识学习部分 1.程序是一段静态的代码,它是应用程序执行的蓝本.进程是程序的一次动态执行,它对应了从代码加载.执行至执行完毕 ...

  5. html2canvas教程_HTML5 Canvas教程:简介

    html2canvas教程 Interested in CSS animation? Check out Creating Animations with CSS, a complete course ...

  6. glut库更新旧程序无法完成编译问题描述

    其实就是很多变量名称出现了变动. 手工替换即可. 绿色部分是系统给出的提示.对应错误需要全部都修订. 全部记录如下: zhangrelay@LAPTOP-5REQ7K1L:~$ cd cppcode/ ...

  7. JavaScript - Objects

    对象定义: let person = {name: {first: "Bob",last: "smith"},age: 32,gender: 'male',in ...

  8. 思维、找规律题目汇总

    转自:http://hi.baidu.com/liuzhe/blog/item/d2dc0fd10bf1eadb572c843d.html 感想: 1.还是数学有前途 2.猜想很重要 3.暴力打表可以 ...

  9. 达拉草201771010105《面向对象程序设计(java)》第十六周学习总结

    达拉草201771010105<面向对象程序设计(java)>第十六周学习总结 第一部分:理论知识 1.程序与进程的概念: (1)程序是一段静态的代码,它是应用程序执行的蓝 本. (2)进 ...

  10. Go并发编程中的那些事[译]

    原文地址:Concurrent programming 原文作者:StefanNilsson 译文出自:掘金翻译计划 本文永久链接:github.com/xitu/gold-m- 译者:kobehah ...

最新文章

  1. 【Qt】在Qlayout中Qlabel::setScaledContents(true);失效
  2. Netty:Java 领域网络编程的王者
  3. Android应用程序组件Content Provider的启动过程源代码分析(1)
  4. linux怎样反向查找路径,Linux中find的用法
  5. android 联系数据库
  6. 新视角:用图像分类来建模文字识别也可以SOTA
  7. android搭建客户端,用Android搭建客户端 手机和服务器交互开发实例
  8. 魅族16s渲染图曝光:配备竖排双摄 无缘刘海屏
  9. 博士和博士后的有什么区别?
  10. Struct嵌套使用
  11. Linux操作系统中常用软件包的下载命令
  12. 【AI创新者】云知声梁家恩:当 AI 遇见 IoT——云知声的 AI 之路
  13. LFY-SpringBoot1【课程概述、springboot2概述】
  14. 计算机手工绘图,你知道做毕业设计的时候为什么一定要有手工绘图呢?
  15. 2021-10-19 nlp_1 nltk的基本应用
  16. HTML页面上传图片直接预览
  17. java小基础之代码块的霸道
  18. SEO优化怎么做?【两步解决】
  19. 机器学习——霍夫丁不等式【转】
  20. 锁屏解锁-KeyguardManager

热门文章

  1. Linux文本使用uniq去重
  2. Android8.0之后UMS支持
  3. 工作面试经验【个人踏踏实实磨练自己】
  4. 计算机在多媒体系统中的作用,计算机多媒体系统在高中物理教学中的作用知识讲解.pdf...
  5. IT技术发展与应用:TOP技能探讨及学习建议
  6. FITC修饰小分子;提供cy3/cy5/FITC荧光标记猪去氧胆酸/双配体(巯基嘌呤(MP)/5-氨基酮戊酸前药等小分子的定制合成
  7. 美国量子计算机体积,IBM 宣布:已实现迄今为止最高的量子体积
  8. 迄今为止最优的Eclipse运行性能调优 ,含eclipse.ini
  9. elementUI中dialog踩坑(首次渲染问题)
  10. Python数据可视化化第五节(子图的绘制及坐标轴共享)