Cod sursa(job #47855)

Utilizator the_dragon_of_rockTzogorean Alex the_dragon_of_rock Data 4 aprilie 2007 09:40:27
Problema Divk Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include<stdio.h>
long long int s[500005];
int n,a,b,k;

int main()
{
    FILE *f=fopen("divk.in","r");
    int x,i;
    long long y;
    fscanf(f,"%d %d %d %d",&n,&k,&a,&b);
    for(i=1;i<=n;i++)
     {
         fscanf(f,"%d",&x);
         s[i]=s[i-1]+x;
     }
    
    
    int j;
        FILE *g=fopen("divk.out","w");
    long long int t=0;
    for (i=0;i<=n-a;i++)
        {
            if (i+b<n)
                        x=i+b;
            else
                        x=n;
                for (j=i+a,y=s[i];j<=x;j++)
                      if ((s[j]-y)%k==0)
                                   {
                                       t++;
                                       //fprintf(g,"%d %d \n",i,j);
                               }    
            }    

    fprintf(g,"%lld",t);                            
    
    return 0;
}