Cod sursa(job #128069)

Utilizator catalaurCatalin catalaur Data 26 ianuarie 2008 00:50:41
Problema Pairs Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
// 
// File:   main.cc
// Author: catalaur
//
// Created on January 26, 2008, 12:09 AM
//

#include <stdio.h>
#include <iostream.h>

FILE *fi , *fo;
long a[1000000],i ,n , j , aux , total=0 , max;
long p[1000000];

void prime(long m){
    for (i=2; i<=m ; i++){
        if (p[i] == 0){
            for (j=i+i; j<=m; j+=i){
                p[j] = 1;
            }
        }
    }
}

int main() {
    fi = fopen("pairs.in" , "rb");
    fscanf(fi , "%d" , &n);
    for (i=0; i<n; i++){
        fscanf(fi , "%d" , &a[i]);
        if (max < a[i]) max = a[i];
    }
    fclose(fi);
    
    prime(max);
    for (i=0; i<n-1; i++){
        for (j=i+1; j<n; j++){
          if (a[i] != a[j]){
             if ((p[a[i]] == 0 || p[a[j]] == 0) && (a[i]%a[j]!=0 && a[j]%a[i]!=0))  total++;
          }
        }
    }
    fo = fopen("pairs.out" , "w");
    fprintf(fo , "%1d" , total);
    fclose(fo);
    
    return 0;
}