Pagini recente » Arhiva de probleme | Clasament coci-finala-2013 | Cod sursa (job #1919996) | Cod sursa (job #1586947) | Cod sursa (job #3203344)
#include <fstream>
#include <vector>
#include <bits/stdc++.h>
using namespace std;
ifstream fin("divk.in");
ofstream fout("divk.out");
int n,k,a,b,s[500001],fr[100001];
long long nr;
int main()
{
fin>>n>>k>>a>>b;
for(int i=1;i<=n;i++)
{
fin>>s[i];
s[i]=(s[i]+s[i-1])%k;
}
for(int i=1;i<=n;i++)
{
if(i>=a)
fr[s[i-a]]++;
nr+=fr[s[i]];
if(i>=b)
fr[s[i-b]]--;
}
fout<<nr;
return 0;
}