Cod sursa(job #2515243)

Utilizator memecoinMeme Coin memecoin Data 28 decembrie 2019 10:17:48
Problema Divk Scor 30
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.9 kb
#include <fstream>
#include <string>
#include <stdio.h>
#include <vector>
#include <algorithm>
#include <math.h>
#include <set>
#include <map>
#include <string.h>
#include <queue>

using namespace std;

#ifdef DEBUG
string name = "data";
#else
string name = "divk";
#endif

ifstream fin(name + ".in");
ofstream fout(name + ".out");

int n,k,a,b;

int v[500005];

int main() {
    
    
    fin >> n >> k >> a >> b;
    
    for (int i = 0; i < n; ++i) {
        fin >> v[i];
    }
    
    int ss = 0;
    
    for (int i = 0; i < a - 1; ++i) {
        ss += v[i];
    }
    
    int result = 0;
    
    for (int i = a; i <= b; ++i) {
        int s = ss;
        
        for (int j = i - 1; j < n; ++j) {
            s += v[j];
            
            result += s % k == 0;
            
            s -= v[j - i + 1];
        }
        
        ss += v[i - 1];
    }
    
    fout << result;
    
    
    return 0;
}