1.積木大賽
(block.cpp/c/pas)
【題目描述】
春春幼兒園舉辦了一年一度的「積木大賽」。今年比賽的內容是搭建一座寬度為?的大
廈,大廈可以看成由?塊寬度為1的積木組成,第?塊積木的最終高度需要是ℎ?。
在搭建開始之前,沒有任何積木(可以看成?塊高度為 0 的積木)。接下來每次操作,
小朋友們可以選擇一段連續區間[?,?],然後將第?塊到第?塊之間(含第 l 塊和第 r 塊)所
有積木的高度分別增加1。
小?是個聰明的小朋友,她很快想出了建造大廈的最佳策略,使得建造所需的操作次數
最少。但她不是乙個勤於動手的孩子,所以想請你幫忙實現這個策略,並求出最少的操作次
數。【輸入】輸入包含兩行,第一行包含乙個整數?,表示大廈的寬度。
第二行包含?個整數,第?個整數為ℎ?。
【輸出僅一行,即建造所需的最少運算元。
【輸入輸出樣例】
block.in block.out
52 3 4 1 2
5【樣例解釋】
其中一種可行的最佳方案,依次選擇
[1,5] [1,3] [2,3] [3,3] [5,5]
【資料範圍】
對於 30%的資料,有1 ≤ ? ≤ 10;
對於 70%的資料,有1 ≤ ? ≤ 1000;
對於 100%的資料,有1 ≤ ? ≤ 100000,0 ≤ ℎ? ≤ 10000
#includeusing namespace std;
int m,n,ha[100010];
int main()
只要後乙個比前乙個大,就還要進行ha[z+1]-ha[z]次,假如不大於,在之前降低中就已經消了 作業之考試n
noip2015普及組 求和 using namespace std 所有在奇 偶數項的同一顏色可以滿足條件 int l,m,n,ha 100010 c 100010 int kao 100010 hahaha 10007 void sf c z 0 sf printf d l 假如序號為zn,那麼...
作業之考試n
可以推出第z個點的聯合權值為與這個點相連的點的權值和的平方減去這些點的權值的平方和 網上有 最大聯合權值格外設變數儲存。由於n過大,所以用vector陣列。includeusing namespace std long long l,m,n vector ha 200010 long long ka...
作業之考試n
首先,我們知道每個人只能告訴乙個人 乙個出度 卻能被幾個人告知 入度不定 結論1 入度為0的人不可能從他人那裡知道自己生日 結論2 假如入度為1的人的那個 1 入度為0,那麼他也不可能從他人那裡知道自己生日。所以我們先把所有入度為0的人排除,以及讓被排除的人的告訴的人的入度減一,直到沒有入度為0的人...