Pagini recente » Cod sursa (job #1498697) | Cod sursa (job #2567941) | Cod sursa (job #1875405) | Cod sursa (job #2665154) | Cod sursa (job #660930)
Cod sursa(job #660930)
#include <fstream>
#define l 100005
using namespace std;
ifstream f("divk.in");
ofstream g("divk.out");
int H[l][50];
long long S,k,n,A,lim,B,i,rez,x;
long long bag(long long val,long long poz)
{
long long R=val%k,p=0;
for(; H[R][p]; p++);
H[R][p]=poz;
}
long long sum(long long val,long long lo,long long hi)
{
long long R=val%k,p=0,s=0;
for(; H[R][p]; p++) if (H[R][p]>=lo&&H[R][p]<=hi) s++;
return s;
}
int main()
{
f>>n>>k>>A>>B;
for(i=1; i<=n; i++)
{
f>>x;
S+=x;
if (S%k==0&&i>=A&&i<=B) rez++;
rez+=sum(S,i-B,i-A);
bag(S,i);
}
g<<rez;
f.close();
g.close();
return 0;
}