Cod sursa(job #9694)

Utilizator cretuMusina Rares cretu Data 27 ianuarie 2007 16:43:22
Problema Secventa 5 Scor 0
Compilator cpp Status done
Runda Unirea 2007, clasele 11-12 Marime 0.89 kb
#include <fstream>
using namespace std;

int x[50];   
int n;  
int nrsol; 
int a[500000];
int l, u;

void Read();
void Back(int k);
void Write(int k);
void Subm();

ofstream fout("secv5.out");

int main()
{   
    Read();
    if (n >= 50)
    {
       fout << 0;
       return 0;
    }
    Back(1);
    fout << nrsol;
    fout.close();
    return 0;
    
}

void Read()
{
     int i;
     ifstream fin("secv5.in");
     fin >> n >> l >> u;
     for (i = 1; i <= n; i++)
         fin >> a[i];
     fin.close();    
    
}

void Back(int k)
{
    for (int i = x[k-1] + 1; i <= n; i++)
    {
        x[k] = i;
        Write(k);
        Back(k+1);
    }
    
}

void Write(int k)
{
    int i, j, id = 0; 
    for (i = 1; i <= k; i++)
        for (j = i-1; j < k; j++)
            if (a[x[i]] == a[x[j]]) id += 2;
    if (id >= l && id <= u) nrsol++;
}