Pagini recente » Cod sursa (job #381271) | Cod sursa (job #2956913) | Cod sursa (job #1763094) | Cod sursa (job #505796) | Cod sursa (job #953331)
Cod sursa(job #953331)
#include <fstream>
#include <deque>
#include <vector>
using namespace std;
ifstream f("divk.in");
ofstream g("divk.out");
int main()
{
int n,k,a,b,s=0;
vector<int> r;
deque<int> dq(1,0);
f>>n>>k>>a>>b;
r.insert(r.begin(),k,0);
r[0]=1;
int sol=0;
for(int i=1;i<=n;i++){
int x;
f>>x;
s=(s+x)%k;
//g<<s<<" "<<x<<" "<<k<<'\n';
if(i>=a){
if(i>=b){
int y=dq.front();
dq.pop_front();
r[y]--;
}
sol+=r[s];
}
dq.push_back(s);
r[s]++;
}
g<<sol;
return 0;
}