uva 10387 Billiard(簡單幾何)

2021-06-22 16:39:03 字數 648 閱讀 4298

題意是乙個球從矩形的中點出發,告訴你小球與矩形兩條邊的碰撞次數與小球回到原點的時間,求小球出發時的角度和小球的速度。

簡單的幾何問題,小球每與豎邊碰撞一次,向右擴充套件乙個相同的矩形;每與橫邊碰撞一次,向上擴充套件乙個相同的矩形。

可以發現,擴充套件矩形的路徑和在當前矩形中的每一段路徑相同,當小球回到出發點時,一條直線的路徑剛好經過最後乙個擴充套件矩形的中心點。

最後擴充套件的路徑和橫邊豎邊恰好組成乙個直角三角形,斜邊是小球走過的路程,兩條直角邊剛好是 橫邊長度 * 與豎邊碰撞次數 與 豎邊長度 * 與橫邊碰撞次數。

乙個高中數學複習的地方是,角度與弧度的轉換。

atan(y / x)計算出來的是弧度:

atan(y / x)=  角度 * pi / 180。

so,角度 = atan(y / x) * 180 / pi。

**:

#include #include const double pi = 4 * atan(1.0);

const double hu = 180 / pi;

int main()

return 0;

}

1038 角谷猜想

1038 角谷猜想 description 角谷猜想 日本一位中學生發現乙個奇妙的 定理 請角谷教授證明,而角谷教授無能為力,於是產生角谷猜想。猜想的內容是 任給乙個自然數,若為偶數除以2,若為奇數則乘3加1,得到乙個新的自然數然後按照上面的法則繼續演算,若干次後得到的結果必然為1,請程式設計驗證。...

1038神經網路

這道題也可以用佇列來做,但比較麻煩。沒辦法,蒟蒻一枚。首先,將起點 ci 1的點 放入佇列之中。當head tail時,head,將隊首的點 team head 展開去找他的兒子節點。如果兒子節點沒放入佇列則放入。l代表本層最後乙個點在team 中的序號,l2用於記錄修改前的l,便於輸出。當head...

1038 演算法提高 分蘋果

時間限制 1 sec 記憶體限制 256 mb 提交 10 解決 4 提交 狀態 討論版 小朋友排成一排,老師給他們分蘋果。小朋友從左到右標號1.n。有m個老師,每次第i個老師會給第li個到第ri個,一共ri li 1個小朋友每人發ci個蘋果。最後老師想知道每個小朋友有多少蘋果。第一行兩個整數n m...