題目描述
有n個正整數排成一行。你的目的是要從中取出乙個或連續的若干個數,使它們的和能夠被k整除。
例如,有6個正整數,它們依次為1,2,6,3,7,4。若k=3,則你可以取出1,2,6,或者2,6,3,7,也可以僅僅取出乙個6或者3使你所取的數之和能被3整除。當然,滿足要求的取法不止以上這4種。事實上,一共有7種取法滿足要求。
給定n和k,以及這n個數。你的任務就是確定從這n個數中取出其中乙個數或者若干連續的數,使它們的和能被k整除有多少方法。記ha=1234567,由於取法可能很多,因此你只需要輸出它mod ha的值即可
輸入
第一行為兩個整數n,k。以下n行每行乙個正整數,描述這個序列。
輸出
輸出乙個整數,為答案mod ha的結果。
樣例輸入
6 3126
374樣例輸出
7提示
對於30%的資料,有1≤n≤1000
對於100%的資料,有1≤n≤500000,1≤k≤100000
思路
對該序列,求字首和sum[i],對位置i**實現
#pragma gcc optimize(3,"ofast","inline")
#includeusing namespace std;
const int inf=0x3f3f3f3f;
const int n=100005;
const int mod=1234567;
int n,k;
int sum[n];
int main()
int ans=sum[0];
for(int i=0;iprintf("%d\n",ans%mod);
return 0;
}
求雙機備份方案,
系統需求 採用ibm p630小型機,儲存採用ibm fast t600,目前為單機執行,小型機通過san交換機連線磁碟系統,mq訊息中介軟體系統小型機負責與國家局的資料上傳。rfid系統採用兩台pc伺服器,通過一台san交換機連線到磁碟上,使用微軟自帶的集群軟體,實現sql資料的高可用,情況配置如...
問題 E 求方案
題目描述 有n個正整數排成一行。你的目的是要從中取出乙個或連續的若干個數,使它們的和能夠被k整除。例如,有6個正整數,它們依次為1,2,6,3,7,4。若k 3,則你可以取出1,2,6,或者2,6,3,7,也可以僅僅取出乙個6或者3使你所取的數之和能被3整除。當然,滿足要求的取法不止以上這4種。事實...
揹包問題求方案數 揹包問題求具體方案
在01揹包的基礎上要求出最優解的方案數 具體的方案 揹包問題求方案數 題目鏈結 解題思路 我們可以設定乙個與陣列f功能類似的陣列g,其中f i 儲存的是體積等於i的最優解 這裡是等於,之前的部落格說的是小於等於,原因後面會說 而g i 儲存的是體積等於i時的最優解的方案數,而f i 為什麼儲存的是等...