Pagini recente » Cod sursa (job #2691636) | Cod sursa (job #2861275) | Cod sursa (job #783334) | Cod sursa (job #1665162) | Cod sursa (job #2460638)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("pairs.in");
ofstream g("pairs.out");
int n, i, j, k = 0, aux1, aux2, cate = 0, doiuri;
bool x[1000001];
int main()
{
f >> n;
int v[n+1];
/// Eratostene pana la 1.000.000
for(i = 2; i*i <= 1000000; i++)
if(x[i] == 0)
for(j = 2; i*j <= 1000000; j++)
x[i*j] = 1;
for(i = 1; i <= n; i++) {
f >> v[i];
}
for(i = 1; i <= n; i++) {
if(x[v[i]] == 0) {
if(v[i] == 2) {
for(j = 1; j <= n; j++) {
if(v[j] != 2)
if(v[j]%2 == 1)
k++;
}
doiuri++;
}
else {
cate++;
}
}
}
if(doiuri > 1)
k = k + cate*(n-1-doiuri-1);
else if(doiuri == 1)
k = k + cate*(n-1-1);
else k = k + cate*(n-1);
g << k;
return 0;
}