字首和系列題目

2022-03-14 12:22:35 字數 1343 閱讀 3434

題目描述:

n個數圍成一圈,要求從中選擇若干個連續的數(注意每個數最多只能選一次)加起來,問能形成的最大的和。

輸入描述:

第一行輸入n,表示數字的個數,第二行輸入這n個數字。

輸出描述 output description

輸出最大和。

樣例輸入:

8 2 -4 6 -1 -4 8 -1 3

樣例輸出:

資料說明:

40% 1<=n<=300

60% 1<=n<=2000

100% 1<= n<=100000,答案在longint範圍內。

#include

using

namespace

std;

int n,maxn,minn,ans=-10000000,x,s[100001];

int main()

maxn=minn=s[n];

for(int i=n-1;i>=1;i--)

cout

0;}

題目描述:

給定n個數 a1 , a2 , … , an

定義 fi,j = ai + ai+1 + ai+2 + … + aj-1 + aj (1 ≤ i ≤ j ≤ n)

求 fi,j 的最大值

輸入描述:

第一行有1個數,n

第二行有n個數,a1 , a2 , … , an

輸出描述 output description

輸出只有一行,fi,j 的最大值

樣例輸入:

樣例中當 i = 1 , j = 4 時,fi,j = a1 + a2 + a3 + a4 = 3 + 6 - 8 + 9 = 10 為最大值

資料規模:

10%的資料 n = 7

30%的資料 n ≤ 1000

100%的資料 n ≤ 1000000 -1000 ≤ ai ≤ 1000 (1 ≤ i ≤ n)

#include

using

namespace

std;

long

long n,x,minn,ans=-100000000000,s[1000001];

int main()

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

cout

0;}

字首和與差分 PAT題目

1.字首和 字首和是一種預處理,即給出n個數和m組訪問,如果直接每次都在這些數列上操作,會造成超時,字首和直接對這些訪問進行預處理,最後直接得出取出結果進行計算。即o n m 相關題目 1046 shortest distance ac include include include include...

力扣 字首和 差分題目

1.724.尋找陣列的中心索引,字首和邊計算邊遍歷,無需真的申請乙個向量來儲存。2.1109.航班預訂統計,差分陣列,單點更新,範圍查詢,就用線段樹。範圍更新,單獨查詢,就用差分陣列 更新乙個範圍,但單點查詢每個的值,就用差分陣列,diff i res i res i 1 那麼由差分陣列反推res就...

LeetCode中有關字首和的題目總結

前字首和是一種重要的預處理,能大大降低查詢的時間複雜度。差分 表示當前數字與上乙個數字的差值 差分陣列即是講這一系列差分值放入乙個陣列。舉個例子,定義陣列a為 int a 10 那麼差分陣列dif的值為 221 14 7411 字首和,即利用乙個陣列sum來記錄陣列a前i項的和。可用來求區間和,如求...