HDU 2298 三分 二分物理題 模板

2021-09-23 05:56:08 字數 998 閱讀 8281

題目

題意:二維面上給定目標座標和初速度,求在座標原點(0,0),發射出去能經過目標點的最小的角度。

思路:寫出乙個高度關於角度的一元二次方程。看這個最大高度是否》=y,判斷是否有解。這是乙個二次型凸函式。假如對稱軸為x,而且最大高度》=y(即有解),[0,x]這一段滿足二分單調性,找出函式值最接近y的角度即可,再使用atan函式,求出角度。

#include

#include

#include

#include

#include

#define en '\n'

#define g 9.8

#define eps 1e-10

//(要足夠小)

using

namespace std;

typedef

double du;

const

int inf=

0x3f3f3f3f

;du x,y,v;

du work

(du o)

intmain()

if(ans

//找到可達到的最大高度。

printf

("-1\n");

else

printf

("%.6f\n"

,atan

(l));}

}}

二分和三分題

目錄三分 連續區間最大和 回到頂部 二分答案區間,每次check,檢查兩個標記的距離,如果小於x,那麼去掉。判斷去掉的個數。farmer john建造了乙個有n 2 n 100,000 個隔間的牛棚,這些隔間分布在一條直線上,座標是x1,xn 0 xi 1,000,000,000 他的c 2 c n...

二分 三分模板

適用於 單調函式 單調增或單調減 基本思想 給定9個數,由小到大排列,從這9個數中找出某乙個確切的數 比如4 偽 int binary sreach int a,int left,int right,int x if a left x return left return 1 給你三個陣列a,b,c...

二分和三分

三分二分,乙個簡單而神奇的演算法,可以簡化時間複雜度,但是用二分有乙個條件,就是我們進行二分的序列必須有單調性。原理 aa中找乙個數x xx 保證x xx一定存在 我們可以用樸素演算法,直接從頭到尾找一遍,時間複雜度o n o n o n 如果當序列a aa的長度十分大時,這種方法就不好用了。二分橫...