P1792 國家集訓隊 種樹

2022-05-05 19:57:28 字數 1018 閱讀 8408

題目描述

a城市有乙個巨大的圓形廣場,為了綠化環境和淨化空氣,市**決定沿圓形廣場外圈種一圈樹。

園林部門得到指令後,初步規劃出n個種樹的位置,順時針編號1到n。並且每個位置都有乙個美觀度ai,如果在這裡種樹就可以得到這ai的美觀度。但由於a城市土壤肥力欠佳,兩棵樹決不能種在相鄰的位置(i號位置和i+1號位置叫相鄰位置。值得注意的是1號和n號也算相鄰位置!)。

最終市**給園林部門提供了m棵樹苗並要求全部種上,請你幫忙設計種樹方案使得美觀度總和最大。如果無法將m棵樹苗全部種上,給出無解資訊。

輸入輸出格式

輸入格式:

輸入的第一行包含兩個正整數n、m。第二行n個整數ai。

輸出格式:

輸出乙個整數,表示最佳植樹方案可以得到的美觀度。如果無解輸出「error!」,不包含引號。

這題的環形板

恰好用到了鍊錶維護左右關係, 環形只需要把首尾處理一下即可

記得判是否可行

#include#include#include#include#include#includetypedef long long ll;

using namespace std;

int rd()

while(c >= '0' && c <= '9')

return flag * out;

}const int maxn = 200019;

int num, m;

struct node

};priority_queueq;

int l[maxn], r[maxn], a[maxn];

bool used[maxn];

int main()

for(int i = 1;i <= num;i++));

} l[1] = num;r[num] = 1;

int ans = 0;

while(m--));

} printf("%d\n", ans);

return 0;

}

國家集訓隊2011 種樹 神貪心

莫名其妙就做了集訓隊的題 不過.資料好水 codevs 1342 哈哈哈亂搞85 貪心的 好像有bug2333 照起點和終點 然後dp搞答案 這個應該很簡單的 要滾一下陣列 同桌打的暴力dp 55好像 思路一樣的 就是省去了那個正確性不一定的貪心 include include define max...

國家集訓隊 旅遊

題目背景 ray 樂忠於旅遊,這次他來到了 t 城。t 城是乙個水上城市,一共有 nn 個景點,有些景點之間會用一座橋連線。為了方便遊客到達每個景點但又為了節約成本,t 城的任意兩個景點之間有且只有一條路徑。換句話說,t 城中只有 n 1n 1 座橋。ray 發現,有些橋上可以看到美麗的景色,讓人心...

國家集訓隊 Tree I

題目 給你乙個無向帶權連通圖,每條邊是黑色或白色。讓你求一棵最小權的恰好有nee dneed need 條白色邊的生成樹。題目保證有解。思路 凸優化裸題,要注意的就是,優先選白色 優先選黑色也行 主要是同一斜率可能會切到很多點,那麼就要有乙個標準,要麼選最小點,要麼選最大。另外求出來的點不一定是ne...