Cod sursa(job #918731)

Utilizator readynessBarabas Barnabas readyness Data 19 martie 2013 08:56:42
Problema Economie Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.1 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <cstdio>

using namespace std;

int main()
{
    FILE * f;
    f = fopen("economie.in","r");
    short n,i,k;
    fscanf(f,"%d",&n);
    unsigned short a[n],megoldas[n],db=0;
    fill(megoldas,megoldas+n,0);
    for(i=0;i<n;i++)
    {
        fscanf(f,"%d",&a[i]);
    }
    sort(a,a+n);
    bool van=true;
    bool oszthato[n];
    fill(oszthato, oszthato+n,false);
    for(k=0;k<n;k++)
    {
        if(oszthato[k]==false)
        {
            db++;
            megoldas[db-1]=a[k];
            van=false;
            for(i=k+1;i<n;i++)
            {
                if(a[i]%a[k]==0)
                {
                    oszthato[i]=true;
                }
                if(oszthato[i]==false)
                {
                    van=true;
                }
            }
        }
        if(!van)
        {
            k=n;
        }
    }
    FILE * g;
    g=fopen("economie.out","w");
    fprintf(g,"%d\n",db);
    for(i=0;i<db;i++)
    {
            fprintf(g,"%d\n",megoldas[i]);
    }
}