Cod sursa(job #46626)

Utilizator the_dragon_of_rockTzogorean Alex the_dragon_of_rock Data 2 aprilie 2007 19:57:23
Problema Divk Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include<fstream>
using namespace std;
long int n,a,b,k,t;
long int s[500005];

int main()
{
    ifstream in("divk.in");
    in>>n>>k>>a>>b;
    int i;
    long int x;
    s[0]=0;
    for (i=1;i<=n;i++)
        {
            in>>x;
            s[i]=s[i-1]+x;
        }
    in.close();
    
    if (b<a)
        {
            x=a;
            a=b;
            b=x;
        }
    
    int j;
    ofstream out("divk.out");
    for (i=0;i<=n-a+1;i++)
        {
        if (i+b<=n)   x=i+b;
        else    x=n;
        for (j=i+a;j<=x;j++)
            if ((s[j]-s[i])%k==0 && j-i>=a && j-i<=b)
                    t++;
        }
    out<<t;
    out.close();
    
    return 0;
}