15 國慶本校腦殘題題解

2022-05-13 12:28:00 字數 2070 閱讀 1201

hdu 2289  à cup

題意: 給你乙個杯子(圓台狀的),告訴你下底半徑、上底半徑、高度和裡面裝的水的體積,然後問你水的高度。

演算法:二分

思路:對水的高度進行二分,根據比例求水的體積,與題目給定的體積進行比較。

hdu 3400  à line belt

題意:給你兩條線ab和cd,告訴你這四個點的座標,然後ab上的移動速度為p,cd上的移動速度是q,兩條線之外的地方移動速度為r,然後問你從a到d最短時間需要多少?

演算法:三分

思路:假設在ab線上移動的距離x,在cd線上的移動距離y,然後時間就等於 x/p + y/q + 兩點間距離/r ,做法用三分找x,然後將x和找到的點傳遞下去三分找y,期間兩次都是找極小值。

1 #include2 #include3 #include4

#define eps 0.00000001

5 typedef struct

node

6node;

9double

lab,lcd;

10 node funa(node a,node b,double x) //

a -> b

1117

double sab=(b.y-a.y)/lab;

18double cab=(b.x-a.x)/lab;

19 tmp.y=x*sab+a.y;

20 tmp.x=x*cab+a.x;

21return

tmp;22}

23 node fund(node c,node d,double x) //

d -> c

2430

double scd=(c.y-d.y)/lcd;

31double ccd=(c.x-d.x)/lcd;

32 tmp.y=d.y+x*scd;

33 tmp.x=d.x+x*ccd;

34return

tmp;35}

36double

funab(node a,node b)

3740

intt,p,q,w;

41double solve(node a,node b,double i,double

j)42

48node a,b,c,d;

49double fun(node a,double x,double

y)50

54double san(node a,double x,double l,double

r)55

68 fm=fun(a,x,l);

69return

fm;70}71

double f(double

x)72

76double san_f(double l,double

r)77

90 fm=f(l);

91return

fm;92}93

intmain()

94106

return0;

107 }

ac**

下面兩道水題,不做無妨。

題目:n !  %  ( k ^ i ) == 0

題意:給你n和k,求最大的i 使得 n!%  ( k ^ i ) == 0 ; 資料範圍非常大

演算法:素因子分解

思路:先將k分解,那麼可以得到 k = p1 ^ a1 + p2 ^ a2 + p3 ^ a3 + ….. –> 那麼k^i裡面就有i倍的這些素因子。那麼可以算出n!裡面這些素因子的個數,然後把這個結果除以k裡面相應素因子的個數,找出最小的那個,就是答案。

題目: 略

題意:有乙個n*n的棋盤,a站在(1,1),b站在(1,n),然後輪流行動,一次可以上下左右斜著走一步,然後走過的地方不能進入,不能走或被對方踩到自己算輸。

演算法:博弈論

思路:兩人之間隔單數列,那麼先走的必輸,隔偶數列,先走的人必贏,因為單隔1列的時候,先走的人要麼前進一列,然後乖乖受死,要麼上公升一格,這時,對方可以跟著你的動作,也就是說情況保持不變,當你不能豎著走的時候,你就輸了。如果隔兩列,那麼先走的人可以前進一列,進入第一種情況。隔更多列時類似。。。

本校自製搜尋題練習第二彈

第一次搜尋題練習各種慘死,第二次雖然稍有提高但是絲毫改變不了慘死的命運 不是至少沒有死的那麼那麼的慘不是 所以就斗膽把諸水題還有題解拿出來曬一下 t1 cogs1104冗餘依賴 在設計關聯式資料庫的 時,術語 函式依賴 fd 被用來表示不同域之間的關係。函式依賴是描述乙個集合中的域的值與另乙個集合中...

騰訊50題第15題

假設按照公升序排序的陣列在預先未知的某個點上進行了旋轉。例如,陣列 0,1,2,4,5,6,7 可能變為 4,5,6,7,0,1,2 搜尋乙個給定的目標值,如果陣列中存在這個目標值,則返回它的索引,否則返回 1 你可以假設陣列中不存在重複的元素。你的演算法時間複雜度必須是 o log n 級別。示例...

一道燒腦題

wa題wa累了,逛csdn看見了這道題,就做了做,寫一下自己的思路,也不知道答案對不對.傳說中的愛因斯坦提出的思考題,他宣稱世界上只有 2 的人能解出這個題目,你肯定聽說過不下一次這道題,但也肯定你始終連題目都沒記清楚過。題目如下 據說有五個不同顏色的房間排成一排,每個房間裡分別住著乙個不同國籍的人...