刷題記錄13

2021-10-10 16:29:28 字數 405 閱讀 5695

噴水裝置長l公尺,寬w公尺的草坪裡裝有n個澆灌噴頭。每個噴頭都裝在草坪中心線上(離兩邊各 \frac 2w 公尺)。我們知道每個噴頭的位置(離草坪中心線左端的距離),以及它能覆蓋到的澆灌範圍。

請問:如果要同時澆灌整塊草坪,最少需要開啟多少個噴頭?

【**】

#includeusing namespace std;

struct nodea[15005];

int cmp(node x,node y)

if(f==1)

cout<【感悟】

題目要求輸出澆灌整個草坪需要開最少的噴頭數,運用貪心,來求出最優的策略。結構體變數的宣告和排序。通過畢達哥拉斯定理求出相應的範圍。最後,計算出能否完成澆灌,能則輸出最小的噴頭數。

力扣刷題記錄13

最近每天晚上和室友做力扣 白天整理下。這裡室友想到的解法是貪心,不斷縮小,但最終我們判斷這種方法不可行。我想到的解法是先排序,對有序陣列的前兩個數都是遍歷找到的,第三個數通過二分找,這樣時間複雜度是o n logn 也沒有縮小很多。最後,我們看了答案。從答案中有兩點可以學習到。一是記得呼叫abs數學...

OI刷題記錄

2014 4 18 poj3264 bzoj1699 balanced lineup rmq 2014 4 19 bzoj1012 jsoi2008 最大數maxnumber noi2004 鬱悶的出納員 bzoj3224 tyvj 1728 普通平衡樹 2014 4 20 bzoj1862 105...

面試刷題記錄

寫一段 判斷乙個包括 的表示式是否合法 注意看樣例的合法規則。給定乙個表示式a,請返回乙個bool值,代表它是否合法。測試樣例 a b 5 4 返回 true 測試樣例 a b 5 4 返回 false include vector include iostream using namespace ...