最值 求和 計數及巢狀使用

2021-10-11 21:40:38 字數 1464 閱讀 2754

最值求和+列舉

最值求和

列舉1.二維字首和

思路:將字首算好,然後用整塊減掉多的再加重複。

注意點:

字首計算的塊值需要將x-1和y+1和當前的值再減去重複部分。

**

#include

using

namespace std;

long

long a[

1001][

1001

], n, m, q, x1, yn1, x2, y2, i, j, qian[

1001][

1001

], t;

intmain()

}for

(i =

1; i <= q; i++

)return0;

}

3.高興的津津

思路:將當前得獎天-上次得獎和t比較,取最小值。第一天不需要判斷。

注意點:1.第一天不能考慮。2.最後一天直接+t。

#include

using

namespace std;

long

long n, t, sum, i, a[

200001];

intmain()

cout << sum + t;

return0;

}

4.獨木橋

思路:士兵轉身不影響最大值,所以不考慮,只要比較左走和右走哪個大哪個小,再和之前找出最大值

注意點:1.士兵轉身不考慮。2.最小值求的也是耗時最長的士兵。

#include

using

namespace std;

long

long l, n, maxn, minn, i, a;

intmain()

printf

("%lld %lld"

, minn, maxn)

;return0;

}

5.小魚的航程

思路:這題如果一天一天考慮會超時,不如先算出一周有幾天游泳,再把所有整週週數*每週天數,再加上沒達到整週的天數。

注意點:1.計數器t在進行完第一輪計算後清零。2.小魚的游泳航程最後要乘上250。3.迴圈邊界,當到周8時自動切換到周1。

#include

using

namespace std;

long

long x, x2, n, t, i, t2;

intmain()

// cout 7* t;

t =0;

for(i =

1; i <= n %

7; i++

)// cout(t2 + t)

*250

;return0;

}

線段樹,求和,最值,資料更新

位運算要比加減預算速度快 include includeusing namespace std struct nodetree 1000 2 開的空間至少要4倍.左移兩位就是4倍 void pushup int o void buidtree int o,int l,int r 建樹 int mid...

樹狀陣列區間求和與區間最值

樹狀陣列區間求和 修改的時間複雜度為o logn 查詢的時間複雜度為o logn lowbit函式這個函式的功能就是求某乙個數的二進位制表示中最低的一位1。舉個例子,x 6,它的二進位制為110,那麼lowbit x 就返回2,因為最後一位1表示2。而樹狀陣列的求和與下標的二進位制有關,詳情見圖 a...

AWK求和 平均值 最值

awk求和 平均值 最值 2014 02 14打包當前目錄下的所有檔案ls awk 取範圍 root vm 202 zhuo echo abc 1233 232 jjjj?awk f 1233 232 root vm 202 zhuo echo abc 1233 232 jjjj?awk f jjj...