Pagini recente » Delay | Diferente pentru implica-te/extinde-arhiva intre reviziile 119 si 118 | Diferente pentru utilizator/divaddd intre reviziile 114 si 121 | Diferente pentru blog/imsmart-2012 intre reviziile 6 si 12 | Cod sursa (job #3156526)
#include<fstream>
using namespace std;
ifstream r("divk.in");
ofstream w("divk.out");
int v[500001],f[99999],n,a,b,k,i,x;
long long c;
int main()
{
for(r>>n>>k>>a>>b,i=1;i<=n;++i) {
r>>x,v[i]=(v[i-1]+x)%k;
if(i>=a)
++f[v[i-a]];
if(i>b)
--f[v[i-b-1]];
c+=f[v[i]];
}
w<<c;
return 0;
}