福建工程學院寒假作業第一周G題

2022-08-28 14:54:23 字數 1539 閱讀 8894

timelimit:1000ms  memorylimit:128000kb

64-bit integer io format:%lld

漲姿勢題就是所謂的優化題,在組隊賽中,隊伍發現了一題水題,那麼應該交給誰去處理?作為處理水題的**手,應該具備什麼樣的素養?

1,要快,水題拼的就是速度!

2,不能卡水題!水題都卡,絕對不是乙個**手的風範!

3,不能出錯,錯一次即罰時20分鐘,對於水題來講是致命的!

4,要能看出來一題是水題!沒有這條,上面三條都是沒有意義的!

如果你希望你成團隊中乙個合格的**手,那麼這套題是你最好的選擇,快ac吧!

本系列即是為了提高水題**手的素養而準備的!水題經常需要用到簡單的優化,中難題的解題過程中也經常需要各種優化,優化是處理超時的首要選擇,目的是降低時間複雜度。

漲姿勢題為3題,題面完全相同,僅資料範圍不同,請根據不同的資料範圍選擇合適的演算法。

題目描述:

給定數列a[1] a[2] ... a[n]

多次詢問

每次詢問 有乙個數字 qi

求有多少組(l,r)滿足 f(l,r)=a[l]+a[l+1]+...+a[r]=qi

輸入要求:

第一行是乙個t表示測試資料的組數。

每組資料的第一行是兩個整數n、q,分別表示陣列長度和詢問的次數

第二行是n個整數a[1],a[2],...,a[n]。

接下來是q行,每行乙個整數qi表示第i次詢問。

資料範圍:

第1題:t<=130,1<=n<=1000,-10^9<=ai<=10^9,-10^12<=qi<=10^12,大資料不超過一半,每組大資料的q為1或2。

第2題:t<=130,1<=n<=10000,q<=50,1<=ai<=10^9,1<=qi<=10^12,大資料不超過一半。

第3題:t<=30,1<=n<=1000,q<=1000000,-10^6<=ai<=10^6,-10^6<=qi<=10^6,大資料不超過5組。

注意認真比較每題的每個數的資料範圍,然後選擇合適的演算法ac吧。注意不要提交錯題目了。

輸出要求:

對於每個詢問,輸出乙個整數表示答案

sampleinput

1

5 64 5 6 5 4411

120610

sampleoutput

220

210思路:由題目可以知道,這題是一題要我們優化處理的題目,怎麼優化處理呢:就是將資料轉變成方便計算的形式。在這題裡我們要求的是有多少個子序列總和等於特定數m,如果每次都用for來加未免太麻煩了,要是可以很快就得出答案就好了。於是我們將sum作為乙個陣列用來儲存我們輸入數每一項a(因為已經有乙個儲存陣列sum存在,所以a的存在是多餘的,可以直接替換常數)的前n項和,如sum[1]=a,sum[2]=sum[1]+a,這個樣子,我們就可以簡單的用列舉求每乙個區間的大小了;

這裡呈上**

for(i=1; i<=n; i++)//注意要由1開始

之後再暴力的遍歷就可以了;

福建工程學院寒假作業第三週B題

timelimit 2000ms memorylimit 128000kb 64 bit integer io format lld problem description 你是我的小呀小蘋果,點亮生命的火,火火火,這是我的滑板鞋,摩擦摩擦 小a被一陣手機鈴聲吵醒了。誰呀?這麼大清早就把我吵醒,我夢...

16級第一周寒假作業H題

timelimit 1000ms memorylimit 128000kb 64 bit integer io format lld problem description 漲姿勢題就是所謂的優化題,在組隊賽中,隊伍發現了一題水題,那麼應該交給誰去處理?作為處理水題的 手,應該具備什麼樣的素養?1,...

16級第一周寒假作業B題

timelimit 4000ms memorylimit 128mb 64 bit integer io format i64d problem description 已知在二維空間中有n個點,p0,p1 pn 1 已按照x為第一優先順序,y為第二優先順序從大到小排好序 即若 pi則pi.x in...