Cod sursa(job #775564)

Utilizator SteveStefan Eniceicu Steve Data 8 august 2012 15:20:21
Problema Economie Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include <fstream>
#include <vector>

using namespace std;

int N, alfa = 0, cnt = -1;
int v[50005];
int x[50005];
vector <int> vect;

void Citire () {
    ifstream fin ("economie.in");
    fin >> N;
    int a;
    for (int i = 0; i < N; i++)
    {
        fin >> a;
        v[a] = 2;
    }
    vect.push_back (0);
    fin.close ();
    v[0] = 1;
}

void Business () {
    for (int i = 1; i <= 50000; i++)
    {
        if (v[i] == 2)
        {
            x[++cnt] = i;
            for (int j = i; j <= 50000; j++)
            {
                if (v[j % i] == 1 || v[j % i + i] == 1) v[j] = 1;
            }
        }
    }
}

void Scriere () {
    ofstream fout ("economie.out");
    fout << cnt + 1 << "\n";
    for (int i = 0; i <= cnt; i++)
    {
        fout << x[i] << "\n";
    }
    fout.close ();
}

int main () {
    Citire ();
    Business ();
    Scriere ();
    return 0;
}