Cod sursa(job #1247675)

Utilizator usermeBogdan Cretu userme Data 23 octombrie 2014 11:58:16
Problema Trie Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.74 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream fin("date.in");
ofstream fout("date.out");

void S2(int p, int q, int v[]){
    int i, j, aux;

    for(i=p;i<q;i++){
        for(j=i+1;j<=q;j++){
            if(v[i]<v[j]){
                aux=v[i];
                v[i]=v[j];
                v[j]=aux;
            }
        }
    }
}

int S1(int k){
    int d=2, nrd=0;

    while(d*d<k){
        if(k%d==0){
            nrd=nrd+2;
        }d++;
    }
    if(d*d==k){
        nrd++;
    }

    return nrd;
}

int main()
{
    int n, v[1000], i, j;

    fin>>n;

    for(i=1;i<=n;i++){
        fin>>v[i];
    }

    S2(1, n, v);

    for(i=n;i>=1;i--){
        if(S1(v[i])==0){
            fout<<v[i]<<" ";
        }
    }

    return 0;
}