Cod sursa(job #1940120)

Utilizator Ruxandra985Nanu Ruxandra Laura Ruxandra985 Data 26 martie 2017 13:57:54
Problema Oite Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <cstdio>
#include <vector>
#define MOD 997846
using namespace std;
vector <int> l[1000000];
int v[1025];
int main()
{
    FILE *fin=fopen ("oite.in","r");
    FILE *fout=fopen ("oite.out","w");
    int i,j,k,n,s,sum,sol=0;
    fscanf (fin,"%d%d",&n,&s);
    for (i=1;i<=n;i++)
        fscanf (fin,"%d",&v[i]);
    l[(v[1]+v[2])%MOD].push_back (v[1]+v[2]);
    for (i=3;i<n;i++){
        for (j=i+1;j<=n;j++){
            sum=(s-v[i]-v[j])%MOD;
            for (k=0;k<l[sum].size();k++)
                if (l[sum][k]==sum)
                    sol++;
        }
        for (j=i-1;j>0;j--){
            sum=(v[i]+v[j])%MOD;
            l[sum].push_back(sum);
        }
    }
    fprintf (fout,"%d",sol);
    return 0;
}