Cod sursa(job #2193363)

Utilizator mihai50000Mihai-Cristian Popescu mihai50000 Data 9 aprilie 2018 20:29:02
Problema Divk Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include <fstream>
using namespace std;
ifstream f("divk.in");
ofstream g("divk.out");
const int NMAX = 5e5 + 5;
int s;
long long nr;
int k, a, b, n;
int v[NMAX];
int main()
{
	int s = 0;
	f >> n >> k >> a >> b;
	for(int i = 1; i <= n; i++)
	{
		int p;
		f >> p;
		s = (s + p % k) % k;
		v[i] = s;
	}
	for(int i = a; i <= b; i++)
	{
		for(int j = 1; j <= n - i + 1; j++)
		{
			if(v[j + i - 1] >= v[j])
				s = v[j + i - 1] - v[j];
			else
				s = v[j + i - 1] + k - v[j];
			if(s % k == 0)
				nr++;
		}
	}
	g << nr;
}