いたずらな子供が高い建物の上で弾むボールで遊んでいます hメートルの高さ、hはメートルで測定されます。
その後、彼は弾むボールを投げると、ボールはすぐに2/3 2/3など、元のバウンスの高さに戻りました。
彼の母親は現在窓メートルの高さにあり、窓の外を眺めていますが、窓はhよりも小さいはずです。つまり、彼の母親は彼の下にあるはずです。
すみません、このお母さんは窓の前でボールを何回見ることができますか?下落と反発の両方を含みます。
注:
ボールのリバウンドの高さが窓よりも絶対に大きい場合にのみ、この母親はそれを見ることができます。
例:
h = 3、バウンス = 0.66、ウィンドウ = 1.5、結果は 3
h = 3、バウンス = 1、ウィンドウ = 1.5、結果は -1 です
の場合ここにいずれか 外れ値の場合は -1 が返されます。
それでは、何が異常値とみなされますか?
1.バウンスバウンス率<=0または>=1、この状況は明らかに不可能です
2. いたずらっ子の身長は母親より低いため、意味がありません。直接 -1 に戻ります
さて、アイデアを見てみましょう:
1. 通常の状況では、母親は弾むボールが初めて落ちるときに少なくとも 1 回は目にします。
2. リバウンドの高さが窓より大きい場合、上下それぞれに2回を加算する必要があります。
まず、外れ値を削除してから、上記のアイデアに従って記述します:
function bouncingBall(h, bounce, window) { var total = -1; if(bounce <= 0 || bounce >= 1){ return total; } if(h > window){ total = 1; var current = h * bounce; while(current > window){ total += 2; current = current * bounce; } } return total; }
上記は JavaScript の楽しい質問の内容です: 弾むボール その他の関連コンテンツについては、PHP 中国語に注意してください。ウェブサイト (www.php.cn)!