← 全部題目
Solved UVa 解題

Back to High School Physics

題目要求算出位移 (displacement),直接寫出 v·2t 就是答案。

Attempts1
First attempt2026-08-18
Solved2026-08-18

Problem

一個粒子具有初速度與加速度。在某個時間點 tt 時,它的速度為 vv。要求計算在時間 2t2t 內,粒子的 總位移(displacement) 是多少。

輸入每行給兩個整數 vvtt,輸出對應的位移,直到 EOF 為止。

Approach

這題的題目在最一開始還特地提到初速度和加速度,會讓你以為要用完整的運動學公式來算。但題目根本沒有給 uuaa 的值。因此實際上真正需要的只有 vvtt 再乘上 22 來求出答案。

把位移公式攤開來看,時間 2t2t 內的位移是:

S=v0(2t)+12a(2t)2=2v0t+2at2=2t(v0+at)S = v_0\,(2t) + \tfrac{1}{2}a\,(2t)^2 = 2v_0 t + 2at^2 = 2t\,(v_0 + at)

而題目給的條件正是 v=v0+atv = v_0 + at(在時間 tt 時的速度)。代進去後,v0v_0aa 會消失,式子就可以簡化成:

S=2t(v0+at)=2tv=2vtS = 2t\,(v_0 + at) = 2t \cdot v = 2vt

所以答案就是 2vt2 * v * t,一行解。

Solution

main.cpp
4 collapsed lines
#include <iostream>
using namespace std;
void solve() {
int v, t;
while (cin >> v >> t) {
cout << 2 * v * t << '\n';
}
}
8 collapsed lines
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
solve();
return 0;
}

Sample Input

sample.in
0 0
5 12

Sample Output

sample.out
0
120

驗算第二組:2×5×12=1202 \times 5 \times 12 = 120,答案正確。


錯誤歷程

  1. AC一次直接過#1

See also