--- tags: uva --- # Uva13142 - Destroy the Moon to Save the Earth ## 題目大意 有一個小行星被預測會撞上地球,科學家想利用月球擋住小行星,但需要讓月球在小行星到達時剛好在地球與小行星中間,所以我們需要增加或減少月球的重量,減少一噸會讓月球繞地球的速度增加 1mm/1,增加一噸則減少,並且我們可以得到 T: 小行星還有幾天會到 S: 月球繞地球現在的速度 D: 月球在小行星到達時距離撞擊點多遠 我們需要找出要讓月球重量變化多少才能讓地球逃過一劫 ## 重點觀念 - 沒有 水題 ## 分析 - S 是不需要的資訊w 因為 D 就是差距多遠所以除以 T 即是到達撞擊點所需要的速度差 - 記得在判斷要增加還是減少時,判斷用的值要先 floor,因為 0 一定是 Add ## 程式題目碼 ```cpp= #include <cmath> #include <iostream> using namespace std; int main() { int t; cin >> t; while (t--) { double T, S, D; cin >> T >> S >> D; double mass = (D * 1000 * 1000) / (T * 24 * 60 * 60); if (floor(mass) > 0) { cout << "Remove " << floor(mass) << " tons" << endl; } else { cout << "Add " << floor(abs(mass)) << " tons" << endl; } } return 0; } ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up